質問: ##勉強でつまづいていること C#を独学で勉強しているのですが、つまずいている点が2つあります. 1.派生クラスは基底クラスを受け継いで機能を拡張できるとのことでしたが、その具体的なメリットを教えてください. 2.単独のクラスを推移的に継承できるとのことでしたが、派生クラスのメンバーが基底クラスのメンバーを隠蔽することがあるらしく、なぜ隠蔽するのかを疑問に思いました. 以上の2点です.よろしくお願いします.
回答: かなり極端なのですが 1 家でたとえさせてもらいます 基底クラスとして「骨組み」を作ります そして家1クラスを作ったときに基底クラスの骨組みを継承すると既に骨組みが完成された状態になります。 あとはこのクラスに肉付けをするだけで家が完成します。 新しく家2を作る場合でも骨組みを継承すれば作業は肉付けだけになります。 わざわざ毎回毎回骨組みを作るのは面倒なので最初から作っておいてそれを活用しようというのが継承のメリットです。 2 おそらくオーバーライドのことだと思います。 1の続きで骨組みを継承したけど少し形を変えたいと思った場合に新しく宣言できるということです。 ここで隠蔽しなかったら基底クラスの骨組みまで変わってしまいます。 ホントに極端なのでいろいろと抜けている部分があります。 いろいろ調べると出てくると思いますので調べてみてください。