我希望能够访问从抽象类的子类实例化的对象。这是一个例子。
// A.java
public abstract class A {
public int getNewNo() {
int newNo = <Instance of B in this example here>.getNo() + 2;
return newNo;
}
}
// B.java
public class B extends A {
public int getNo() {
return 2;
}
}
// C.java
public class C {
public C(A a) {
System.out.println("The number is "+a.getNewNo());
}
}
// example.java
public void main(String args[]) {
B b = new B();
C c = new C(b);
// should now print out "The number is 4"
}
这可能吗?
谢谢。
最佳答案
尝试:
// A.java
public abstract class A {
public abstract int getNo();
public int getNewNo() {
int newNo = getNo() + 2;
return newNo;
}
}
关于java - 如何访问java中抽象类的子类实例化的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17742793/