Java final关键字修饰对象

Java final关键字修饰对象

结论: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;//尝试修改对象的引用,结果报错了
		
	/*运行结果:
	123
	chars数组地址460141958
	02b
	chars数组地址460141958
	*/
	//由此可见,可以修改数组对象内容且数组的地址不会改变,而且不可以修改数组的引用
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » Java final关键字修饰对象