【发布时间】:2020-07-02 12:09:17
【问题描述】:
我有两个班级如下-
public class Test1 {
private int a;
private int b;
public setA(int a) {this.a=a;}
public setB(int b) {this.b=b;}
}
public class Test2 extends Test1 {
private int c;
public setC(int c) {this.c=c;}
}
如果我传递了 Test1 或 Test2 的对象,我正在寻找一种调用方法,该方法将设置 a 和 b 的值
public class Test3 {
Test1 obj1 = new Test1();
Test2 obj2 = new Test2();
public static void main() {
populateAB(obj1);
populateAB(obj2);
}
public void populateAB(???something obj) {
obj.setA(5);
obj.setB(10);
}
}
populateAB() 的原型应该是什么来接受来自 Test1 和 Test2 的对象并调用 setter 函数?
【问题讨论】:
-
我建议你在互联网上研究继承。可以找到大量这样的例子。也许这有点解释你的问题? stackoverflow.com/questions/6182141/java-inheritance-example
-
您需要利用构造函数以更简洁的方式实现您的期望
-
您的问题是关于
Inheritance而不是 Java 的Generics。通常来说,任何子类型实例都可以赋值给它们的父类型变量。
标签: java class object generics inheritance