当前位置: 首页 > 面试题库 >

没有扩展到超类的超级关键字

阮华美
2023-03-14
问题内容

有一个简单的程序代码。在构造函数中,super()没有扩展到超类的调用,我不明白在这种情况下会发生什么?

public class Student {

    private String name;
    private int rollNum;

    Student(String name,int rollNum){
        super(); //I can not understand why super keyword here.
        this.name=name;
        this.rollNum=rollNum;
    }


    public static void main(String[] args) {

        Student s1 = new Student("A",1);
        Student s2 = new Student("A",1);

        System.out.println(s1.equals(s2));
    }

}

问题答案:

没有显式扩展另一个类的每个类都隐式扩展java.lang.Object。因此,super()只需调用Object的no-arg构造函数。

请注意,此显式调用是不必要的,因为编译器会为您添加它。super()当您要使用参数调用超类构造函数时,只需在构造函数中添加调用。



 类似资料:
  • 问题内容: 当我以为自己终于了解了泛型时,我遇到了以下示例: 它说,如果第1行未注释,则不会编译以下内容: 如果注释了第2行,则不会编译以下内容: 在第二个示例中,允许使用脂肪族及其超类型。那么为什么不允许脂肪族? 在第一个示例中,为什么不允许? 第一个编译器错误: 第二编译器错误: 问题答案: 您的第一个声明 表示 可能 是一个(因为extends ,extends 和extended )。 在

  • 公共类JavaApplication1{ } 在这里,JavaApp1不是子类,它包含一个超级关键字,那么它意味着什么呢?

  • 本文向大家介绍JavaScript中的超级关键字?,包括了JavaScript中的超级关键字?的使用技巧和注意事项,需要的朋友参考一下 超 该超级 关键字用于访问和调用函数对对象的父。在类和对象文字中的任何方法定义中,super.prop和super [expr]表达式均清晰可见。它在“ extended ”类中使用,该类使用“ extends ”关键字。 语法 示例 在以下示例中,名为“人”的类

  • 问题内容: 但是,我似乎仍然对super关键字感到迷茫: 当我们声明这样的集合时: 不应该相反吗?我们有一个列表,其中包含一些对象(类型未知),它们是的父对象Number。因此Object应该适合(因为它是的父项),而不应该。由于某种原因,情况恰恰相反。 只要我们有以下代码 编译上面的代码是不可能的(我的理智建议这是正确的行为),但是基本逻辑可以证明是相反的: 我知道这很疯狂,但这不是他们不允许使

  • 超媒体点击事件的监听 超媒体消息的点击事件包括:点击打开链接url和点击打开app的原生页面;其中点击打开url链接使用setOnHyperUrlListener接口,方法如下: Ntalker.getInstance().setOnHyperUrlListener(new OnHyperUrlListener() { @Override public void OnOpenHyp

  • 问题内容: ERDB中的超级和候选密钥之间有何区别? 问题答案: 候选键是 最小的 超级键