質問: 基底クラスにあるvirtualメソッドの継承について質問です。 派生クラス内で中身が全く同じメソッドを使う場合、overrideとして派生クラスにも同じコードを記載する必要はありますか?(少しかじったことのあるJavaにおいては基底にあるものは基本継承されるということで、同じなら書かなくてもよかった気がします。それで今回のそのように考えました。)また、実際にVisual Studioでも基底クラスのvirtualメソッドは、派生クラスにおいても継承されており作動しました。 もし、どうしても全く同じ内容のメソッドであってもoverrideとして派生クラスでも書かなければならない理由などがあるとするのであれば、その理由は何なのでしょうか?私の理解では、基底クラスのメソッドを派生クラスでoverrideする時は、メソッド名は同じでも、実行内容の詳細を個々の派生クラスの内容に合わせて変えることができる、ということだと思っていたのですが...。私の理解は間違っているでしょうか。よろしくお願いします。
回答: > > 派生クラス内で中身が全く同じメソッドを使う場合、overrideとして派生クラスにも同じコードを記載する必要はありますか? > > > その必要はないです。 Windows Forms アプリを作ったことがありますか? Visual Studio のテンプレートで作ると、From コントロールを継承した Form1 がデフォルトで生成されると思いますが、基底クラスの Form に山ほど定義されているメソッドを Form1 でいちいち全部 override して定義し直したりはしないですよね。 !イメージ説明