Java程序的基本格式:
Java程序代码必须放在一个类中,刚开始学习时,我们可以将类看作一个Java程序。
类使用关键字class定义,在class前面可以有类的修饰符。
类的定义格式如下:
修饰符 class 类名{
程序代码
}
1:Java程序代码可分为执行定义语句和功能执行语句,其中,结构定义语句用于声明一个类或方法,功能执行语句用于实现具体的功能,每条功能执行语句的最后必须用分号结束(;)。
举例:
System.out.println(“这是第一个Java程序”);
需要注意的是,在程序中,不要将英文的分号写成中文的分号。
否则编译器会出现如下所示的错误:
2:Java语言是严格区分大小写的
,在定义类时,不能将class写成Class,否则编译器会出现如下错误:
假设在程序中定义了一个Computer,computer和Computer是两个完全不同的符号,因此在编写程序的时候需要注意!
3:在编写Java程序时,为了方便阅读,通常会使用一种良好的书写格式进行排版,但这并不是必需的,我们可以在两个单词或符号之间插入空格,制表符以及换行符等任意的空白字符
举例:
第一种书写形式:
public class HelloWorld { public static void main(String[ ]args) {System.out.println("你好,Java");} }
输出:
你好,Java
虽然Java语言并没有严格要求使用什么样的格式编排程序代码,但是,为了提高可读性,应该使自己编写的代码整齐美观,层次清晰
常用的编排方式即为如下所示:第二种的这种形式,一行只写一条语句,符号“{”与语句同行,符号“}”独占一行
第二种书写形式:
public class HelloWorld { public static void main(String[]args) { System.out.println("你好,Java"); } }
4:Java程序中一个连续的字符串不能分成两行书写
举例:
public class HelloWorld{ public static void main(String[]args){ System.out.println("你好 Java"); } }
编译并不能通过,出现以下错误:
但有些字符串太长,必须两行才能够显示出来,针对这种情况,我们可以**将字符串分成两个字符串,然后使用加号(+)将这两个字符串连接起来,在加号(+)处换行
**,例如:可以将上面的语句修改为如下所示:
public class HelloWorld{ public static void main(String[]args){ System.out.println("你好"+ "Java"); } }
此时就可以输出正常结果啦!
Java中的注释:
单行注释:
单行注释用于对程序中某一行代码进行解释,一般用来注释局部变量,单行注释用符号“//”表示,“//”后面为被注释的内容
举例:
int c=10;//定义一个整形变量c
多行注释:
多行注释顾名思义就是注释的内容可以为多行,它以符号“/ ”开头,以符号"*/"结束。*
举例:
/*int c=10; int x=5;*/
文档注释:
文档注释是以“/**”开头,并在注释内容末尾以“*/”结束。文档注释是对一段代码概括性的解释说明,可以使用javadoc命令将文档注释提取出来生成帮助文档。
举例:
/** name="黑马程序员"; */
Java中的标识符:
和我们之前学过的C语言、Python等一样,在使用Java语言进行编程的过程中也需要定义一些符号标记一些名称,如类名,方法名,变量名等等,这些符号我们统称为标识符。
标识符可以是由字母,下划线,数字和美元符号(¥)组成,但不能是Java中的关键字,并且数字不可以开头
标识符的定义规则和C语言相同,这里就不过多赘述了
为了增加代码的可读性,在定义标识符时,以下规则建议遵循:
1:包名所有字母一律小写,例如:cn.itcast.test 2:类名和接口名每个单词的首字母都要大写,例如:ArrayList,Iterator 3:常量名所有字母大写,单词之间用下划线连接,例如:DAY_OF_MONTH 4:变量名和方法名的第一个单词首字母小写,从第二个单词开始每个单词首字母大写,例如:lineNumber,getLineNumber. 5:在程序中,应该尽可能的使用有意义的单词定义标识符,使得程序能够便于阅读,例如:定义用户名----username,定义密码----password
Java中的关键字:
注意:
1:所有的关键字都是小写的 2:不能使用关键字命名标识符 3:const和goto是保留关键字,虽然在Java中还没有任何意义,但在程序中不能用来作为自定义的标识符 4:true,false和null虽然不属于关键字,但他们具有特殊的意义,也不能作为标识符使用
Java中的常量:
常量就是固定不变的值,是不能改变的数据
举例:
数字1,字符‘a’,浮点数3.14等都是常量
在Java中,常量包括整形常量,浮点数常量,布尔常量,字符常量等
整形常量:
整形常量是整数类型的数据,有二进制,八进制,以及十六进制
在程序中为了标明不同的进制,数据都有特定的标识 八进制必须以0开头,例如:0211,0432 十六进制必须以0x或0X开头,例如:0xaf2,0Xdd 整数以十进制表示时,第一位不能是0
浮点数常量:
浮点数常量就是数学中用到的小数,浮点数分为单精度浮点数(float)和双精度浮点数(double)两种类型
单精度浮点数后面以F/f结束,而双精度浮点数后面以D/d结束,当然,在使用浮点数时也可以在结尾处不加任何的后缀,此时**JVM会默认浮点数为double类型的浮点数,浮点数常量还可以通过指数形式表示**
字符常量:
字符常量用于表示一个字符,一个字符常量要用一对英文半角格式的单引号(‘’)括起来,字符常量可以是英文字母,数字,标点符号,以及由转义序列表示的特殊字符
举例:
‘a’ ‘1’ ‘&’ ‘/t’
字符串常量:
字符串常量用于表示一串连续的字符,一个字符串常量要用一对半角格式的双引号(“”)括起来。
举例:
“HelloWorld” “123” “welcome\n”
布尔常量:
布尔常量即布尔型的值,用于区分事物的真与假,布尔常量有true和false两个值
null常量:
null常量只有一个值null,表示对象的引用为空
变量的定义:
在程序运行期间,随时可能产生一些临时数据,应用程序会将这些临时数据保存在内存单元中,每个内存单元都用一个标识符标识,这些用于标识内存单元的标识符就成为变量,内存单元中存储的数据就是变量的值
通过具体的代码实现变量的定义:
int x=0,y; y=x+3
通过上述第一行代码定义了两个变量x和y,与此同时也在内存中分配了两块内存单元,不仅如此,在定义变量的时候,为变量x分配了初始值0,而y没有分配初始值,此时x和y在内存中的状态,如下图所示:
通过上述第二行代码,我们为y变量进行赋值,在程序执行到第二行代码的时候,程序首先取出变量x的值,与3相加后,将结果赋值给变量y,此时变量x和y的状态就会发生改变,如下所示:
变量的数据类型:
整数类型变量:
整数类型变量用来存储整数数值,即没有小数部分的值,为了给不同大小范围内的整数合理地分配存储空间,整数类型分为四种不同的类型,分别是字节型(byte),短整型(short),整形(int),长整型(long)
注:在为一个long类型的变量赋值时,所赋值的后面要加上字母L(或小写l),说明赋值为long类型,如果赋的值未超出int的取值范围,则可以省略字母L(或小写l)
举例:
long num=22000000000L;//所赋的值超过了int型的取值范围,后面必须加上字母L long nums=189L;//所赋的值未超过int型的取值范围,后面可以加字母L long nums=189;//所赋的值未超过int型的取值范围,后面的字母L可以省略
浮点数类型变量:
浮点数类型变量用于存储小数数值,double类型所表示的浮点数比float类型更精确
下图为两种浮点数所占存储空间的大小以及取值范围:
在Java中,一个小数会被默认成double类型的值,因此在为一个float类型的变量赋值时,在所赋值的后面一定要加上字母F(或小写字母f),而为double类型的变量赋值时,可以在所赋值的后面加上字母D(或小写d)或者可直接省略
举例:
float num=3.1423f;//为一个float类型变量赋值,后面必须加上字f double nums=98.3;//为一个double类型变量赋值,后面可以省略字母d double nums=189.8d;//为一个double类型变量赋值,后面可以加上字母d
字符型变量:
在Java 中,字符类型变量用char表示,用于存储一个单一字符,Java中每个char类型的字符变量都会占用两个字节
在给char类型变量赋值时,需要用一对英文半角式的单引号(’ ‘)把字符括起来,例如’a’.
无论是文字还是数字,在计算机中,他们都能够被表示为由连续的0或1表示出来的二进制,但人们是很难理解这种二进制的,于是就产生了各种方式的编码,使用一个数值代表某个字符,如我们在C语言中常用的字符编码系统ASCII
但Java使用Unicode字符编码系统,Unicode为每个字符制定了一个唯一的数值,在计算时,计算机会自动将字符转化为所对应的数值
举例:
char c='a';//为一个char类型的变量赋值字符a char ch=97;//为一个char类型的变量赋值整数97,相当于赋值字符a