重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

Java言語の継承について
親クラスPと、それを継承した子クラスCがあります。
メインクラスで、
P p=new C();
などと書きますが

C p=new C();
ではダメですか?

A 回答 (2件)

その部分だけを見るならダメってことはありません。


ただし、変数pに代入できるオブジェクトの型がクラスCとその子クラスに限定されてしまいます。Pを継承した別の子クラスXがあったとして、pにnew X()やnew P()を代入することができなくなります。
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。
とても分かりやすく、助かりました。

お礼日時:2012/06/03 22:53

OCP(オープンクローズの原則)やデザインパターンを



学びましょう。オブジェクトはできる限り抽象度の
高い型で扱うほうがうまくゆくことが多いのです。

具体的な型をコードで使うと、そのコードが適用できる範囲が
狭まり、新しい継承型をつくるたびに、それを扱うための
コードがあちこちで増えてしまいます。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!