Java抽象类字段覆盖

Java抽象类字段覆盖,第1张

Java抽象类字段覆盖

它并没有覆盖任何内容,您只是在当前类范围内隐藏了原始字段。如果将变量与子类型一起使用,您仍然可以访问原始属性。例:

abstract class GenericContainer {    public GenericChild child;       }abstract class GenericChild {    public int prop1=1 ;}class SpecialChild extends GenericChild {    public int prop1=2;}class SpecialContainer extends GenericContainer {    public SpecialChild child;}public class Main {    public static void main( String ... args ) {        GenericContainer container = new SpecialContainer();        container.child = new SpecialChild();        System.out.println( container.child.prop1 );        SpecialChild child = (SpecialChild) container.child;     System.out.println( child.prop1 );    }}

打印1,然后打印2。

SpecialChild
你也可以去使用了一个级别
super

class SpecialChild extends GenericChild {    public int prop1=2;    public int getOriginalProp1() {        return super.prop1;    }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5560765.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存