packagecom.diamondk.javase.finaltest;publicclassFinalTest02{publicstaticvoidmain(String[] args){// 创建一个User对象,a引用指向该对象User a =newUser();// 又创建一个新的User对象,a引用指向这个新的对象// 此时上面的对象已经没有任何引用指向它,成为垃圾数据,等待垃圾回收器回收
a =newUser();// 被final修饰的引用一旦指向某个对象,就不能再指向其他对象finalUser u =newUser(10);// u = new User(20); // 编译报错,不能指向其他对象// u = null;
u.id =20;// 虽然不能指向其他对象,但所指向的对象内部的数据是可以修改的}}
常量的定义
packagecom.diamondk.javase.finaltest;publicclassChinese{// 国籍// 需求:每一个中国人的国籍都是中国,而且国籍不会发生改变,为了防止国籍被修改,建议加fina1修饰。// final修饰的实例变量是不可变的,这种变量一般和static联合使用,被称为常量// 常量的定义语法格式:// public static final 类型常量名=值;// java规范中要求所有常量的名字全部大写,每个单词之间使用下划线连接publicstaticfinalString GUO_JI ="中国";}