1.关键字
(1)java语言中被赋予了特定含义的单词
(2)特点:全部小写
(3)注意事项:goto和const作为保留字存在
高级记事本对于关键字会有特殊颜色显示
2.标识符
(1)就是给类,接口,方法,变量等起名字的字符系列
(2)规则:
A.字母大小写
B.数字
C.$和_
(3)注意事项:
A.不能以数字开头
B.不能是java中的关键字
C.区分大小写
(4)常见的命名规则:(见名知意)
A.包
全部小写
单级包:小写
多级包:小写,并且用.隔开
B.类和接口
一个单词:首字母大写
多个单词:所有单词的首字母大写
C.方法或者变量
一个单词:首字母小写
多个单词:第一个单词的首字母小写后面的单词首字母大写
D.常量
全部大写
一个单词:所有的字母都大写
多个单词:所有的字母都大写,并且单词单词之间用_隔开。
3.注释
(1)就是对程序进行解释的一段文字
(2)分类:
A.单行注释 //
B.多行注释 /**/ 当行注释不能嵌套使用
C.文档注释 /** */
(3)写一个程序的步骤
A.需求
B.分析
C.实现
D.代码体现
(4)作用:A.解释说明程序,提高代码的阅读性
B.程序调试
4.常量
(1)在程序运行时,值不会改变的量
(2)分类:
A.字面值常量
B.自定义常量
(3)字面值常量:
A.字符串常量
B.整数常量
c.小数常量
D.字符常量
E.布尔值
F.空值
(4)在java中对整数常量提供可四种变现形式
A.二进制
B.八进制
C.十进制
D.十六进制
5.进制转换
6.变量
(1)在程序运行时,其值在一定范围内可以发生改变的量
(2)变量的申明格式
数据类型 变量名=初始化值
数据类型 变量名 ;
变量名=初始化值
7.数据类型
(1)java是一种强类型的语言,针对每一种数据都提供可对应的数据类型
(2)分类:
A.基本数据类型
B.引用数据类型
(3)基本数据类型:4种8类
A.整数 字节数
byte 1 -128-127
short 2 -2^31-2^31-1
int 4
long 8
B.浮点数
float 4
double 8
C.布尔型
boolean 1
D.字符
chart 2
注意:整数默认是 int 浮点数默认是double
长整型要加L或者l
单精度要加f或者F
8.数据类型转换
(1)boolean类型不能转换成其他类型
(2)默认转换
A.从小到大
B.byte,short,chart--int-long-float-double
c.byte,short,chart之间不能相互转换,直接转换成int类型进行运算
(3)强制转换
A.从大道小
C.精度的损失
B.格式
目标数据类型 变量名=(目标数据类型)(被转换的数据)
(4)思考题和面试题:
A:下面两种方式有区别吗?
float f1 = 12.345f;
float f2 = (float)12.345;
B:下面的程序有问题吗,如果有,在哪里呢?
byte b1 = 3;
byte b2 = 4;
byte b3 = b1 + b2;
byte b4 = 3 + 4;
C:下面的操作结果是什么呢?
byte b = (byte)130;
D:字符参与运算
是查找ASCII里面的值
'a' 97
'A' 65
'0' 48
System.out.println('a');
System.out.println('a' + 1);
E:字符串参与运算
这里其实是字符串的连接
System.out.println("hello"+'a'+1);
System.out.println('a'+1+"hello");
System.out.println("5+5="+5+5);
System.out.println(5+5+"=5+5");
数据类型中补充的几个小问题
1:在定义Long或者Float类型变量的时候,要加L或者f。
整数默认是int类型,浮点数默认是double。
byte,short在定义的时候,他们接收的其实是一个int类型的值。
这个是自己做了一个数据检测的,如果不再它们的范围内,就报错。
2:byte值的问题
byte b1 = 127;
byte b2 = (byte)128; //-128
byte b3 = (byte)129; //-127
byte b4 = (byte)130; //-126
byte的范围:-128 ~ 127
128:10000000
-128:10000000 (这里的1即是符号位,也是数值位)
3:数据类型转换之默认转换
byte,short,char -- int -- long -- float -- double
long: 8个字节
float:4个字节
A:它们底层的存储结构不同。
B:float表示的数据范围比long的范围要大
long:2^63-1
float:3.4*10^38 > 2*10^38 > 2*8^38 = 2*2^3^38 = 2*2^114 > 2^63-1
4:Java语言中的字符char可以存储一个中文汉字吗?为什么呢?
可以。因为java语言中的字符占用两个字节。
Java语言采用的是Unicode编码。