final和static
1.final实例域
// final指该引用不会再指向新的对象
private final Integer age;
//方法1:final定义变量必须在调用构造对象后被初始化.
// 实例域赋值
// {
// age = 1;
// }
// constructors
//方法2:final定义变量必须在调用构造对象后被初始化.
// 构造方法赋值
Employee(Integer age) {
this.age = age;
}
2.静态变量
// 属于类,所有构造出来的对象都共享同一个nextId
private static int nextId = 1;
// 属于对象,每个对象都有自己的id
private int id;
3.静态常量
// 静态常量
public static final double PI = 3.1415926;
4.静态工厂
// 静态工厂,一般用来构造对象
public static Employee newInstance() {
return new Employee(10);
}