子类覆写的变量被private隐藏,强制转换方式通过子类访问父类的被覆写变量:
import static java.lang.System.*;
public class SuperParent{
public static void main(String[] args){
Parent2 p2=new Parent2();
//-因为变量str在Parent2中是private修饰,虽然覆写了Parent1中的str,但是隐藏起来,这样访问调用会报错
//out.println(p2.str);
//-虽然Parent2中的覆写变量str已经隐藏起来,但可以通过强制转换方式访问Parent1中的str变量
out.println(((Parent1)p2).str);
}
}
//-父类:
class Parent1{
public String str="父类Parent1的变量str!";
}
//-子类:
class Parent2 extends Parent1{
private String str="覆写父类Parent1的变量str,并隐藏!";
}
热心技术,并兼吃喝,偶谈风月,不言国事.
浙公网安备 33010602011771号