以下哪些类具有默认构造函数?
答
你是对的。根据定义,缺省构造函数是在未定义构造函数时创建的。由于A
没有定义构造函数,因此会为其创建一个默认构造函数。
从技术上讲,你可以说B
有一个默认的构造函数,因为如果没有定义没有参数的构造函数就会创建。
参考:http://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html#jls-8.8.9
答
精确。
类A
有一个默认的构造函数,因为您没有为该类提供任何构造函数。因此,编译器会自动提供一个无参数的默认构造函数。这个默认构造函数将调用超类的无参构造函数(在这种情况下是Object类)。第二类,B
,提供了一个无参数的构造函数,但它不是默认的,因为编译器没有为你提供它。
你为什么这么想? – SLaks
[Java默认构造函数]的可能重复(http://*.com/questions/4488716/java-default-constructor) – MWiesner