Java语言是面向对象的程序设计语言,Java程序的基本组成单元是类,类体中又包括属性和方法两部分。每一个应用程序都必须包含一个main()方法。含有main()方法的类称为主类。

一、Java主类结构
一个Java程序是由若干个类组成的。在下面的示例代码中,就是一个类名为Test的类,语句package com.example为声明该类所在的包,package为包的关键字。
通常将类的属性称之为类的全局变量(成员变量),将方法中的属性称之为局部变量。全局变量声明在类体中,局部变量声明在方法体中。
main()方法是类体中的主方法。public 、static和void分别是main()方法的权限修饰符、静态修饰符和返回值修饰符,Java程序中的main()方法必须声明为public static void。String[] args是一个字符串类型的数组,它是main()方法的参数。main()方法是程序开始执行的位置。
package com.example;
public class Test
{
static String s1="您好";
public static void main(String[] args){
String s2="java";
System.out.println(s1);
System.out.println(s2);
}
}
运行结果如图所示:
二、基本数据类型
在Java中有8种基本数据类型来存储数值、字符和布尔值,如下图所示:
(1)整数类型
整数类型用来存储整数数值,即没有小数部分的数值。可以是正数,也可以是负数。整数数据在Java中有 3种表现形式。分别为十进制、八进制和十六进制。
整数数据根据它所占内存大小的不同,可分为byte、short、int和long4种类型。他们具有不同的取值范围,如下图所示:
(2)浮点类型
浮点类型表示有小数部分的数字。Java语言中浮点类型分为单精度浮点类型(float)和双精度浮点类型(double),它们具有不同的取值范围,如下图所示:
(3)字符类型
字符类型用于存储单个字符,占用16位(2个字节)的内存空间。在定义字符型变量时,要以单引号表示,如's'表示一个字符。而"s"则表示一个字符串。
(4)布尔类型
布尔类型又称为逻辑类型,通过关键字boolean来定义布尔类型变量,只有true和false两个值,分别代表布尔逻辑中的“真”和“假”。布尔类型不能与整数类型进行转换。布尔类型通常被用在流程控制中作为判断条件。
三、变量与常量
在程序执行过程中,其值不能被改变的量称为常量,其值能被改变的量称为变量。变量与常量的命名都必须使用合法的标识符。
(1)标识符和关键字
标识符可以简单地理解为一个名字,用来标识类名、变量名、方法名、数组名、文件名的有效字符序列。Java语言规定标识符由任意顺序的字母、下划线(_)、美元符号($)和数字组成,并且第一个字符不能为数字。在Java语言中标识符的字母是严格区分大小写的。
关键字是Java语言中已经被赋予特定意义的单词,不可以把这些字作为标识符来使用。Java语言中的关键字如下图:
(2)声明变量和常量
在程序运行过程中,空间内的值是变化的,这个内存空间就称为变量。变量的命名必须是合法的标识符。在声明变量时可以是没有赋值,也可以是直接赋给初值。
int age;//声明int型变量
char char1='r';//声明char型变量并赋值
在程序运行过程中一直不会改变的量称为常量(constant),通常也被称为“final变量”。常量在整个程序中只能被赋值一次。在Java语言中声明一个常量,除了要指定数据类型外,还需要使用final关键字进行限定。当定义的final变量属于“成员变量”时,必须在定义时就设定它的初值,否则会产生编译错误。
final double PI=3.1415;//声明double型常量PI并赋值
final boolean BOOL=true;//声明boolean型常量BOOL并赋值
(3)变量的有效范围
在类体中定义的变量称为成员变量,成员变量在整个类中都有效。类的成员变量又可分为两种,即静态变量和实例变量。如下所示:x为实例变量,y为静态变量(也称类变量)。如果在成员变量的类型前面加上关键字static,这样的成员变量称为静态变量。静态变量的有效范围可以跨类,甚至可以达到整个应用程序之内。对于静态变量,除了能在定义它的类内存取,还能直接以“类名.静态变量”的方式在其他类内使用。
class var{
int x=45;
static int y=90
}
在类的方法体中定义的变量称为局部变量。局部变量只在当前代码块中有效。局部变量的生命周期取决于方法,当方法被调用时,Java虚拟机为方法中的局部变量分配内存空间,当该方法的调用接收后,则会释放方法中局部变量占用的内存空间,局部变量也会被销毁。
局部变量和成员变量的名字相同,此时成员变量将被隐藏,即这个成员变量在此方法中暂时失效。示例代码如下所示:
package com.example;
public class Val {
static int times=3;
public static void main(String[] args){
int times=4;
System.out.println("times的值为:"+times);
}
}
运行结果如下图所示:
四、运算符
(1)赋值运算符
赋值运算符以符号“=”表示,它是一个二元运算符(对两个操作数作处理),其功能是将右方操作数所含的值赋给左方的操作数。例如:
int a=10;
由于赋值运算符“=”处理时会先取得右方表达式处理后的结果,因此一个表达式中若含有两个以上的“=”运算符,会从最右方的“=”开始处理。
(2)算术运算符
Java中的算术运算符主要有+、-、*(乘)、/(除)、%(求余),它们都是二元运算符。其中,“+”和“-”运算符还可以作为数据的正负符号,如+5、-7。
(3)自增和自减运算符
自增、自减运算符是单目运算符,可以放在操作元之前,也可以放在操作元之后。操作元必须是一个整型或浮点型变量。自增、自减运算符的作用是使变量的值增1或减1。放在操作元之前的自增、自减运算符,会先将变量的值加1(减1),然后再使该变量参与表达式的运算。放在操作元之后的自增、自减运算符,会使变量参与表达式的运算,然后再将该变量加1(减1) 。
(4)逻辑运算符
返回类型为布尔值的表达式,如比较运算符,可以被组合在一起构成一个更复杂的表达式。这是通过逻辑运算符来实现的。逻辑运算符包括&(逻辑与)、||(逻辑或)、!(逻辑非)。逻辑运算符的操作元必须是boolean型数据。
(5)三元运算符
三元运算符的使用格式为:条件式?值1:值2。若条件式的值为true,则整个表达式取值1,否则取值2。三元运算符等价于if...else语句。