親を子にダウンキャストするときに java.lang.ClassCastException が発生する理由を誰か説明してもらえますか?
public class Child extends Parent{
public static void main(String[] args){
new Child().go();
}
void go(){
go2(new Parent(), new Child());
go2((Child) new Parent(), new Child());
}
void go2(Parent p1, Child c1){
Child c2 = (Child)p1;
Parent p2 = (Parent)c1;
}
}
class Tree{}
参照変数のキャストを読み、Web で例を検索しました。誰か説明してくれませんか?例外をスローする理由を本当に理解したいです。ありがとう