==和equals方法
==
数值类型:
不一定要求数据类型严格相同,只要两个变量的值相等就返回true。
引用类型:
只有指向同一对象时,才会返回true。==不可以用于比较类型上没有父子关系的两个对象。
equals
equals()方法是Object类提供的一个实例方法,所有引用变量可以调用该方法来判断是否与其他引用变量相等。两个引用变量指向同一个对象才会返回true。
final修饰符
final成员变量
final修饰的成员变量必须由程序员显式地指定初始值。
- 类变量:必须在静态初始化块中指定初始值或声明该类变量时指定初始值。
- 实例变量:必须在非静态初始化块、声明该实例变量或构造器中指定初始值。
- final成员变量在显式初始化之前不能直接访问,但可以通过方法来访问。
final局部变量
final修饰局部变量时,既可以在定义时指定默认值,也可以不指定默认值。
final修饰基本类型变量和引用类型变量的区别
final只保证这个引用类型变量所引用的地址不会改变,即一直引用同一个对象,但这个对象完全可以发生改变。
final方法
final修饰的方法不可被重写,但可以被重载
final类
final修饰的类不可以有子类。