结论:final 修饰对象,对象的内容可变,引用不可变。

final 应用于类、方法和变量、对象时意义是不同的,但本质是一样的,都表示不可改变。
但是修饰对象时要注意:因为对象是引用类型,存储的是地址,所以final修饰之后,指的是引用地址不可变。

案例:

        final char[] chars = {'1','2','3'};//定义final修饰的char数组对象        System.out.println(chars);        System.out.println("chars数组地址" + chars.hashCode());        chars[0] = '0';        chars[2] = 'b';        System.out.println(chars);        System.out.println("chars数组地址" + chars.hashCode());        char[] chars2 = new char[3];//      chars = chars2;//尝试修改对象的引用,结果报错了/*运行结果:123chars数组地址46014195802bchars数组地址460141958*///由此可见,可以修改数组对象内容且数组的地址不会改变,而且不可以修改数组的引用