在Java构造函数中调用Super
我知道在Java中创建子类时会调用super。但是super是在每个构造函数中调用的,还是仅在子类的第一个构造函数中调用的在Java构造函数中调用Super,java,constructor,super,Java,Constructor,Super,我知道在Java中创建子类时会调用super。但是super是在每个构造函数中调用的,还是仅在子类的第一个构造函数中调用的 谢谢您可以像这样从同一个类调用另一个构造函数: MyClass(int-someValue){ 这(someValue,false); .... } 在这种情况下,不会调用超级构造函数,但会在第一个构造函数中调用它,该构造函数不会从类中调用另一个构造函数 但是super是在每个构造函数中调用的,还是只在第一个构造函数中调用 子类的构造函数 首先,没有什么像第一个构造函数或第
谢谢您可以像这样从同一个类调用另一个构造函数: MyClass(int-someValue){ 这(someValue,false); .... } 在这种情况下,不会调用超级构造函数,但会在第一个构造函数中调用它,该构造函数不会从类中调用另一个构造函数 但是super是在每个构造函数中调用的,还是只在第一个构造函数中调用 子类的构造函数 首先,没有什么像第一个构造函数或第二个构造函数,因为构造函数调用将基于对象创建 如果以这种方式创建对象
new MyClass(); //then no-argument constructor will be called
如果对象是以这种方式创建的
new MyClass("ABC");// then parameterized constructor will be called
因此,在第一行的每个构造函数中都调用了super()
注意:如果您使用this()
显式调用同一类中的其他构造函数,则在该场景中,现有构造函数中不会调用super()
,请给出一个具体的问题示例,理想情况下,为了自己回答这个问题,你需要指出你已经尝试了什么。注意,你不需要在所有情况下都调用super。请举例说明您的意思。第一个构造函数是什么意思?每个构造函数都会显式(通过super(…)
)调用父构造函数,或者通过一个假定的构造函数隐式调用默认父构造函数,也可能通过同一类型的另一个构造函数(通过this(…)
)调用。