【发布时间】:2011-12-27 15:07:13
【问题描述】:
有没有人有任何可行的策略来解决转换/向上转换问题?我理解何时允许向上转换和向下转换,但是当问题往往涉及多个对象时,我往往很快就会感到困惑。例如,找到这样一个问题的答案的最佳方法是什么:
问题:编译以下程序的结果是什么:
interface Inter{}
class Base implements Inter{}
class Derived extends Base{}
class ZiggyTest2{
public static void main(String[] args){
Base b = new Base();
Derived d = new Derived();
Inter i = (Base)b;
i = (Base)d;
Derived bd = (Derived)b;
b = (Base)i;
}
}
我对答案并不感兴趣,但对解决问题的方法更感兴趣。有什么方法/策略可以用来解决上面的向上转换/向下转换问题吗?例如,是否可以将参考/对象绘制在纸上,以便我可以获得视觉表示,这有帮助吗?
谢谢
【问题讨论】: