【问题标题】:understanding super keyword when no extends [duplicate]没有扩展时理解超级关键字[重复]
【发布时间】:2020-11-17 17:03:07
【问题描述】:
public class B {
    B()
    {
        super();
        System.out.println();
    }
    
}

我想知道这个程序发生了什么,它运行良好,但我没有扩展任何类

【问题讨论】:

标签: java super


【解决方案1】:

每个类默认扩展自 Java 中的 Object 类,调用 super() 将调用 Object 类的构造函数。

【讨论】:

    【解决方案2】:

    每个类都扩展 Object - 所以你正在调用 super() 方法。如果您只是在构造函数中设置断点并进入超级调用,您可以看到这一点。你真正拥有的是:

    public class B extends Object {
        B()
        {
            super();
            System.out.println();
        }
        
    }
    

    【讨论】:

    • 如果我们扩展了一个类,那么这意味着它同时扩展了 objct 类和我们扩展的类,对吗?如有错误请指正谢谢
    • 这意味着你的类正在扩展一个扩展 Object 的类。
    猜你喜欢
    • 1970-01-01
    • 2011-02-05
    • 1970-01-01
    • 1970-01-01
    • 2010-12-27
    • 2018-11-20
    • 2010-12-20
    • 1970-01-01
    • 2013-05-07
    相关资源
    最近更新 更多