1.JVM是Java平台的核心
2.JVM关键字 :ClassLoader,HotSpot编译,内存模型,自动垃圾回收
3.标识符 :以字母,下划线,美元符开始,后面可以跟字母,数字,下划线,美元符
4.Java中true,false,null均为小写 ;Java中所有数据类型占用的字节数固定且与具体实现无关,所以没有sizeof操作符
5.Java数据类型
类型 | 范围 |
byte | 8bit,带符号,-2^7~2^7-1 |
short | 16bit,带符号,-2^15~2^15-1 |
int | 32bit,带符号,-2^31~2^31-1 |
long | 64bit,带符号,-2^63~2^63-1 |
char | 16bit,不带符号,0~2^16-1 |
float | 32bit |
double | 64bit |
returnAddress | 同一方法中某操作码的地址 |
reference | 堆中对某对象的引用,或者是null |
6.布尔型数据 只能参与逻辑关系运算
7.字符常量 用单引号括起来,char c1;(缺省值为0)
8.64位长整形 以l或者L结尾;@long a = 65536*65536;(乘法越界,a=0)
@long a = 65536L*65536;(a=4294967296L)
9.自动类型转换 :@整形,实型,字符型数据可以混合运算,运算中先转换为同一类型然后进行运算
@转换从低级到高级:byte,short,char—> int —> long—>float —>double
10.类型转换注意事项 :@不能对boolean类型进行类型转换
@不能把对象类型转换成不相关类的对象
@在把容量大的类型转换为容量小的类型时必须使用强制类型转换
@浮点数到整数的强制转换是通过舍弃小数得到(不是四舍五入)
11.switch 表达式可以使用的类型有:byte,int,char,short
12.面向对象3要素 :封装性,继承性,多态性
13.Java方法中参数的传递是值传递
14.方法覆盖 时应遵循的原则 @覆盖后的方法不能比被覆盖的方法有更严格的访问权限
@覆盖后的方法不能比被覆盖的方法产生更多的例外
15.几种访问权限 的范围
16.final 的含义,static 的含义(属于类的,类的实例间共享,可通过类名直接访问),abstract 的含义
17.this 指向自己的引用,super 指这个对象的父类
18.finalize()方法 是在java.lang.Object中实现的,在用户自定义的类中,它可以被覆盖,但一般在最后要调用父类finalize()方法来清除对象所使用的所有资源(super.finalize();)
19.反射 是Java被视为动态(或准动态)语言的一个关键性质
20.String 类的相关知识点(具体见之前的一篇讲String的文章)