子类覆写的变量被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,并隐藏!"; }
热心技术,并兼吃喝,偶谈风月,不言国事.