小编rwu*_*wu6的帖子

什么时候超类没有默认构造函数?

根据构造函数Java教程:

您不必为您的类提供任何构造函数,但在执行此操作时必须小心.编译器自动为没有构造函数的任何类提供无参数的默认构造函数. 此默认构造函数将调用超类的无参数构造函数.在这种情况下,如果超类没有无参数构造函数,编译器将会抱怨,因此您必须验证它是否存在.如果你的类没有显式的超类,那么它有一个隐式的超类Object,它有一个无参数的构造函数.

如果你有一个没有显式默认构造函数的超类A,
并且子类B 扩展了没有显式默认构造函数的A,

在驱动程序类的main方法中你
A obj1 = new A();
会创建一个默认构造函数,
它将调用Object类的默认构造函数,对吗?

但是如果
B obj2 = new B();
按照教程进行操作,将生成B的默认构造函数,
构造函数将调用超类的无参数构造函数,而超类
将依次调用Object中的构造函数.

那么什么时候超类没有无参数构造函数呢?

java inheritance constructor class

4
推荐指数
2
解决办法
725
查看次数

1
推荐指数
1
解决办法
9426
查看次数

标签 统计

class ×1

constructor ×1

html ×1

inheritance ×1

java ×1

javascript ×1

jquery ×1