我在学校学习 Java,遇到了继承和构造函数的问题。我有3个类,A类,B类和C类。A类是超类,B类扩展A类,C类扩展B类。B类有一个构造函数,其形式(参数)是一个字符串。一切都很好,直到这里。所以现在,我将 B 类扩展到 C 类。在 CI 类中,需要创建一个构造函数,该构造函数具有 B 类的实例作为其参数。然后我需要从 B 类中提取一些信息并将其存储在 C 类中。
这是我们的代码。
public class B extends A {
int b;
public B(int b) {
this.b=b;
}
}
public class C extends B {
int c;
public C(B b) {
this.c = b.b;
}
}
在我的主要()
我有以下代码行来创建 C 的实例
C c_c = 新 C(新 B(12));
当它被编译时,我得到一个错误。错误:B 类中的构造函数 B 不能应用于给定类型;
原因:实际参数列表和形式参数列表的长度不同
你们能帮我理解我做错了什么吗?