1. Java定义二维数组必须为其指定行数,列数无所谓。
2. java中要给局部变量赋初始值,而成员变量可以不用。
3. 成员变量和局部变量重名时,程序优先成员变量。
4. float b=2.1f; // 浮点型文字常量缺省情况下被认为是 double 型,可以通过在后面加 "f" 或 "F" 指明其为单精度文字常量,只用于十进制表示形式中
5. 当没有指定构造方法是,系统自动添加无参构造方法;但当系统有指定构造方法,只能用这个。系统不会自动生成无参构造方法。
6. 静态初始化块只在类加载时执行,且只会执行一次,同时静态初始化块只能给静态变量赋值,不能初始化普通的成员变量。
7. 包的取名:用小写
8. java中4种修饰符访问权限
访问权限 类 包 子类 其他包
public ∨ ∨ ∨ ∨
protected ∨ ∨ ∨ ×
default ∨ ∨ × ×
private ∨ × × ×
9. this关键字代表当前对象。
10. 由于方法内部类不能在外部类的方法以外的地方使用,因此方法内部类不能使用访问控制符和 static 修饰符
11. java中的继承是单继承
12. 继承的初始化顺序:父类属性—父类构造方法—子类属性—子类方法
13. final。可修饰类、方法、属性和变量。修饰后不能被继承、覆盖,属性有且只能被赋值一次,类似常量。
14. super代表父类。super.age.
15. 子类必须调用父类构造方法(默认)。
16. Object类。所有类的父类。
17. toString()方法:返回对象的哈希code(对象地址字符串)。
18. equals()方法:比较的是对象的引用是否指向同一块内存地址。
19. 两类比较,比的是地址,与equals()类似。
20. 多态。前面声明是什么就属于什么。父类的对象不能引用子类独有的方法。
21. 向上类型转换和向下类型转换。instanceof指出对象是否是特定类的一个实例.
22. 抽象类。不关注子类如何实现,但是必须要有,抽象方法以分号结束。
23. 接口。是一种规范,来约束类,多继承,implements实现。定义接口的语法:
[修饰符] interface 接口名[extends 父接口1,父接口2…]
{ 常量定义public static final;抽象方法定义 public abstract;}
24. 使用匿名内部类来实现接口。