2017-03-23 10 views
-1

2つのクラス、AおよびBクラスBはクラスAから継承します。 次のコードにはどのような問題がありますか?Javaアップキャスト多型問題

B b3 = (A)(new B()); 

なぜそれは合法的なアップキャストですか?

意味があります。 Bのインストラクターは、その一部を作成し、その後、オブジェクト全体のB部分を作成し、それがA.

+0

シュート私は詳細な回答をしていましたが、これは私がそれを掲載しようとしていたときに閉鎖されました! – ostrichofevil

+0

ちょうど記録のために:私の答えがDUPの質問/答え以外に役立つと考えるなら...それを受け入れることを自由に感じる;-) – GhostCat

答えて

0

シンプルのような役割を果たし:

BはB、いないキャストA.でなければならないので、これは法的ではありませんAはその割り当てを無効にする。

関連する問題