- ベストアンサー
Java サブクラスの宣言 継承
Java言語の継承について 親クラスPと、それを継承した子クラスCがあります。 メインクラスで、 P p=new C(); などと書きますが C p=new C(); ではダメですか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
その部分だけを見るならダメってことはありません。 ただし、変数pに代入できるオブジェクトの型がクラスCとその子クラスに限定されてしまいます。Pを継承した別の子クラスXがあったとして、pにnew X()やnew P()を代入することができなくなります。
その他の回答 (1)
- 中村 拓男(@tknakamuri)
- ベストアンサー率35% (674/1896)
回答No.2
OCP(オープンクローズの原則)やデザインパターンを 学びましょう。オブジェクトはできる限り抽象度の 高い型で扱うほうがうまくゆくことが多いのです。 具体的な型をコードで使うと、そのコードが適用できる範囲が 狭まり、新しい継承型をつくるたびに、それを扱うための コードがあちこちで増えてしまいます。
お礼
早速のご回答ありがとうございます。 とても分かりやすく、助かりました。