我有两个类A(超类)和B(子类),如下所示。我用super()
关键字和参数来实例化超类的构造函数。然而,我正在寻找另一种优雅的方式,而不是将超类的所有参数列在子类中,因为当超类的属性数量很大时,它变得很长。实例化继承构造函数
public class A {
private String a1;
private String a2;
private String a3;
public A (String a1, String a2, String a3){
this.a1 = a1;
this.a2 = a2;
this.a3 = a3;
}
public void setA1(String a1){
this.a1 = a1;
}
public String getA1(){
return a1;
}
...
}
public class B extends A{
private String b1;
private String b2;
private String b3;
public B (String b1, String b2, String b3, String a1, String a2, String a3){
super(a1,a2,a3);
this.b1 = b1;
this.b2 = b2;
this.b3 = b3;
}
public void setB1(String b1){
this.b1 = b1;
}
public String getB1(){
return b1;
}
...
}
您必须在某处提供这些参数,这是最优雅的方式。 – 11thdimension
考虑创建一个类来封装参数。 (顺便说一句,你在调用构造函数,而不是实例化构造函数,这是别的。) – bradimus