将超类构造函数参数传递给子类?
Passing SuperClass constructor parameters to a SubClass?
刚开始在我们的项目中实施 Super 和 Sub 类,但我在创建子类构造函数以允许不同类型的帐户但遵循与超类相同的规则时遇到了一些问题.
这是我遇到的构造函数错误。
http://i.imgur.com/C3n7MxQ.png
在您的 Account
class 中,您指定了一个采用多个参数的构造函数:firstName、lastName、accountNumber 等。
在 subclass 的构造函数中你必须调用 super 的构造函数 class -> super()
一个小例子:
class Person {
public String name;
/*constructor*/
public Person(String name) {
this.name = name;
}
}
class Student extends Person {
public String studentNumber;
/*constructor*/
public Student(String name, String studentNumber) {
/* invoke super constructor. The parameters have to match the
* parameters specified in the constructor of Person
*/
super(name);
/* Now set the properties that only belongs to Student */
this.studentNumber = studentNumber;
}
}
刚开始在我们的项目中实施 Super 和 Sub 类,但我在创建子类构造函数以允许不同类型的帐户但遵循与超类相同的规则时遇到了一些问题.
这是我遇到的构造函数错误。
http://i.imgur.com/C3n7MxQ.png
在您的 Account
class 中,您指定了一个采用多个参数的构造函数:firstName、lastName、accountNumber 等。
在 subclass 的构造函数中你必须调用 super 的构造函数 class -> super()
一个小例子:
class Person {
public String name;
/*constructor*/
public Person(String name) {
this.name = name;
}
}
class Student extends Person {
public String studentNumber;
/*constructor*/
public Student(String name, String studentNumber) {
/* invoke super constructor. The parameters have to match the
* parameters specified in the constructor of Person
*/
super(name);
/* Now set the properties that only belongs to Student */
this.studentNumber = studentNumber;
}
}