java语言组成
关键字 运算符 标识符 语句 函数 注释 常量 变量 数组
关键字
被java赋予特殊意义的单词,大部分为小写
标识符
在程序中自定义的一个词
命名规则:
1、由字母、数字、_、$等符号组成。
2、不能用关键字命名。
3、不能以数字开头。
4、区分大小写。
注释
对代码的解释
1、//单行注释
2、/**/多行注释
3、/**
*
**/
这是java特有的注释,可以通过javadoc提取里面的注释,并生成文档。
注:注释是不编译进字节码文件中的。
注释习惯:尽量写上需求注释。
常量和变量
常量就是不可改变的量。常量的命名通常使用大写。
常量的分类:整形常量 浮点型常量 字符常量 布尔常量。
变量就是内存中的一块存储区域,该区域有自己的名称和类型,该区域的数据在同一类型之间进行改变。
变量的作用:
用来存储一个可以改变的同一类型的数据。
数据类型
基本数据类型
byte(1字节 -27—27-1) short(2字节) int(4字节) long(8字节) char(2字节) float(4字节) double(8字节) boolean(1字节)
整数默认是int 小数默认是double
基本数据类型使用时必须给变量赋值
引用数据类型
类(class) 接口(interface) 数组([])等
类型提升和强制转化
当同为数值类型进行计算时,不同的类型要进行转化成相同的类型,在进行计算,这是小的类型将转化成大的类型。
byte b = 3; b = b + 4; 4默认是int类型,而b是byte类型,在进行计算时,需要将4或(b + 4)进行强制转化成byte,如 (byte)(b + 4)
面试题
byte b1 = 3; byte b2 = 4; byte b = 1; b = b1 + b2;可不可以编译?
答:不可以编译。b1和b2是变量在进行计算时可能超出byte的范围,酸依不可以编译。
int是默认类型。使用int不会出现这种情况。
运算符
算术运算符
+ - * / %(取余) ++ 等
b = a++ 先赋值后自增 b = ++a;先自增后赋值。
面试题:i = 1; i = i++; i等于多少?内存中如何进行运算?
答: i = 1;在内存中,i先把1的值进行预存,再进行i + 1,然后进行把预存的值再赋值给i,所以i是先变成2再把1赋值给i,结果为1.
赋值运算符
= += -= *= /= %=
a += 2相当于 a = a + 2
面试题:
short a = 3; a = a + 4和 a += 4 有什么区别?
答:a += 4可以编译成功,a = a + 4不可以编译成功。
a = a + 4;因为a是byte型变量和4进行计算时会出现类型转化错误,而a += 4是赋值运算,在底层自动进行了类型转化,所以a += 4可以编译成功。
----------------------------------------------------------------------------------------------------------------------------------------
本文章作为笔记使用,如有错误的地方,请大家指正。谢谢大家。