final修饰引用型变量,变量所指对象的属性是否能改变!!

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

请在下面的程序中找出错误的位置!!!

package com.bdqn.cc.polymorphic;

public class Eog {
	String name;
	public Eog(String name) {
		this.name=name;
	}
}
package com.bdqn.cc.polymorphic;

public class TestEog {
	public static void main(String[] args) {
		final Eog eog=new Eog("欧欧");
		eog.name="美美";
		eog=new Eog("亚亚");
		System.out.println(eog.name);
	}
}

dog.name="美美"这行代码是没得问题的,主要问题出在eog=new Eog("亚亚")上面,因为dog已经定位为final修饰的常量,其值是不可改变,大家一定要区分对象引用值和对象的属性两个概念,但是所指对象的内容是可以改变的。

转载于:https://my.oschina.net/u/4115727/blog/3047254

你可能感兴趣的:(python,移动开发)