weixin_65851305 2021-12-27 14:27 采纳率: 90%
浏览 39
已结题

求解析1111111

关于下面程序,( A)的结论是正确的。
class J_SubClass extends J_Test {}
public class J_Test {
J_Test(int i) {
}
public static void main(String[] args) {
J_SubClass a = new J_SubClass();
}

A、不能通过编译,因为类J_Test 没有定义无参数的构造方法
B、不能通过编译,因为类J_SubClass 没有定义无参数的构造方法
C、不能通过编译,因为没有实现 J_SubClass(int i)的构造方法
D、可以成功通过编译

  • 写回答

2条回答 默认 最新

  • 大鹏cool Java领域优质创作者 2021-12-27 14:39
    关注
    1. 在 Java 中,如果没有构造方法,编译器在编译代码时会自动生成一个无参数的构造方法。
    2. 在 Java 中,子类构造方法在调用前必须调用父类的构造方法。
    3. 如果子类没有构造方法,编译器自然会生成一个无参数的构造方法,默认会调用父类无参数的构造方法,而父类又没有定义无参数构造方法,因此会编译失败。
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月27日
  • 已采纳回答 12月27日
  • 创建了问题 12月27日