Chi*_*abh 0 java constructor default-constructor
我只想在这里清除我的概念,所以我要问......
如果我为我的类定义一个显式的参数化构造函数,我是否仍然可以调用java编译器提供的默认构造函数(默认情况下为每个类提供)?
或者它是否导致在这种情况下导致编译时错误?请解释一下编译器调用的确切情况!
Jer*_*emy 11
当且仅当 没有提供构造函数时,编译器才会创建无参数构造函数.
JLS在第8章中说明:
如果类不包含构造函数声明,则隐式声明没有形式参数且没有throws子句的默认构造函数.
一个"捕获"是:
如果隐式声明了默认构造函数但是超类没有不带参数且没有throws子句的可访问构造函数(第6.6节),那么这是一个编译时错误.
归档时间:
13 年,4 月 前
查看次数:
7542 次
最近记录:
9 年,10 月 前