我有:
class A
{
public String getID() { return "id of A";}
}
class B extends A
{
public String getID() { return "id of B"; }
}
and
class C {
public A returnA() {
return new A();
}
}
现在我需要做的是:
C c = new C();
B b = (B)c.returnA();
String id = b.getId();
但是我没有访问C.returnA()
的实现,并且我无法将其返回类型更改为B。
A
)转换为子类(B
)。显然这是行不通的。 - Jon SkeetA
)的实例转换为子类(B
)的实例。 - NPE