【问题标题】:What is the difference between Super thing = new Sub() and Sub thing = new Sub()?Super thing = new Sub() 和 Sub thing = new Sub() 有什么区别?
【发布时间】:2014-05-06 10:37:30
【问题描述】:
Super thing = new Sub();
Sub thing = new Sub();

在访问事物和我可以用它做什么等方面有什么区别?

【问题讨论】:

  • 这是什么语言?

标签: subclass superclass super subclassing difference


【解决方案1】:

不同之处在于变量Super thing 可以重新分配给实现Super 的任何其他子类,而Sub thing 当然只能分配给另一个Sub 类。

也就是说,将new Sub() 分配给Super thing 使用多态性覆盖,您可以在其中找到很好的教程herehere。您只能调用类Super 中定义的方法。如果这些方法在其中一个子类中被覆盖(阅读:重新定义),多态性将确保调用被覆盖的方法,而不是 Super 类中的方法。

【讨论】:

    猜你喜欢
    • 2021-02-28
    • 2010-12-14
    • 1970-01-01
    • 1970-01-01
    • 2017-05-12
    • 2018-08-02
    • 2011-11-22
    • 1970-01-01
    • 2011-05-02
    相关资源
    最近更新 更多