我在将类之间相互转换时遇到问题。Java中的类抛出异常
要更详细地解释它,请查看此图像。
在我的代码,我做SkillBase s = new SkillBase();
,然后设置在类中的一些价值。 然后我尝试做Subclass sub = (Subclass)s;
,但是在运行时它给出了一个ClassCastException。
我添加了一个小调试部分,它检查它是否为instanceof
,它返回true。
我已经尝试了谷歌,看到了这里的一些问题藏汉和阅读它们(他们都没有说是为我一个答案)
那么,我该怎么办?
其实,这就是我正在做的。 Subclass扩展了SkillBase,所以它应该可以被施放吗? – Lolmewn 2012-01-27 19:02:50
要添加:'Subclass' *是一个*'SkillBase'。相反的是**不是**。您不能将父类转换为子类。 – 2012-01-27 19:04:12
@Lolmewn:我添加了一些真实的例子,看看。 – 2012-01-27 19:07:20