final
为什么要用 final 修饰变量
在程序中,如果一个数据是固定的,那么直接使用这个数据就可以了。但是,这样阅读性差,所以给该数据起个名称。
写法规范:
常量所有字母都大写,多个单词,中间用 _ 连接
用法和注意事项
1 fianl 是一个修饰符,可以修饰类,方法,变量
2 final 修饰的类,不可以被继承
3 final 修饰的方法,不可以被覆盖
4 final 修饰的变量,是一个常量,只能赋值一次
内部类只能访问,被 final 修饰的,局部变量
super
super 和 this 的用法,很相似
this : 代表一个 本类对象的 引用
super : 代表了 一个 父类 空间
this 代表子类对象,super不代表父类对象,仅仅代表父类空间
在代码中,
Zi z = new Zi();
有子类对象,没有父类对象
子类为什么能获得父类的内容,子类持有父类的引用
transient
Serializable接口
,被Serializable序列化的数据,有两种无法被写进去
用static
修饰的数据,不在堆中,无法写进去,公共数据,可以写成static
transient
:短暂的,静态的
非静态的数据不想被序列化可以使用这个关键字修饰
private transient String name;
private static int age;
这里,age,name 都不会被写进去