こちらは参考になるでしょうか。急がば回れといいますが、Javaの方が分かりやすいかも。メソッド(Cで言うところの関数)の引数構成が同じときは「オーバーライド」で、引数構成が異なるときは「オーバーロード」。
●Javaの道:クラス(8.オーバーライドとオーバーロード)
オーバーライドとは、スーパークラスで定義されたメソッドをサブクラスで再定義することを言います。
オーバーライドする側はオーバーライドされる側と戻り型、インスタンスメソッド名、引数型、引数の数が同じでなければなりません。どれか一つでも異なる場合はオーバーライドとは見なされません。
http://www.javaroad.jp/java_class8.htm
ちなみに、メンバーとは、Cで言うと変数に当たります。また、メソッドは、Cで言うと関数になります。
●オーバーロードとオーバーライド - プログラミングスレまとめ in VIP
親クラス(スーパークラス)で定義されたメソッドを、子クラス(サブクラス?)で再定義するテクニック。再定義などと呼ぶ。
これもポリモーフィズムを実現するためのテクニックとしてよく用いられる。
http://vipprog.net/wiki/%E3%82%AA%E3%83%BC%E3%83%90%E3%83%BC%E3%...
それから、コメント欄を開けておくと、補足などをしてもらえてお得です。
※参考URL
●Visual Basic 中級講座 - ポリモーフィズム
http://homepage1.nifty.com/rucio/main/VBdotNet/Advance/Advance2o...
●Chapter 10 継承とポリモーフィズム - @IT
http://www.atmarkit.co.jp/fdotnet/vb6tonet2/vbnet2_10/vbnet2_10_...
●明快入門 Visual Basic 2008 ビギナー編 (林晴比古実用マスターシリーズ) [大型本] 林 晴比古 (著)
明快入門 Visual Basic 2008 ビギナー編 (林晴比古実用マスターシリーズ)
@ITの「オブジェクト指向プログラミング超入門」ですが、
第4回「継承を使うために知っておくべきこと」は如何でしょうか。
http://www.atmarkit.co.jp/fdotnet/basics/oop_index/index.html
http://www.atmarkit.co.jp/fdotnet/basics/oop04/oop04_01.html
図があって分かりやすい方と思いますが。
継承は、クラスの全メンバーをコピペしてくることで、
オーバーライドは、一部だけ違うメンバーを上書きすることと思ってます。
メンバーとは何なのでしょうか?
こちらは参考になるでしょうか。急がば回れといいますが、Javaの方が分かりやすいかも。メソッド(Cで言うところの関数)の引数構成が同じときは「オーバーライド」で、引数構成が異なるときは「オーバーロード」。
●Javaの道:クラス(8.オーバーライドとオーバーロード)
オーバーライドとは、スーパークラスで定義されたメソッドをサブクラスで再定義することを言います。
オーバーライドする側はオーバーライドされる側と戻り型、インスタンスメソッド名、引数型、引数の数が同じでなければなりません。どれか一つでも異なる場合はオーバーライドとは見なされません。
http://www.javaroad.jp/java_class8.htm
ちなみに、メンバーとは、Cで言うと変数に当たります。また、メソッドは、Cで言うと関数になります。
●オーバーロードとオーバーライド - プログラミングスレまとめ in VIP
親クラス(スーパークラス)で定義されたメソッドを、子クラス(サブクラス?)で再定義するテクニック。再定義などと呼ぶ。
これもポリモーフィズムを実現するためのテクニックとしてよく用いられる。
http://vipprog.net/wiki/%E3%82%AA%E3%83%BC%E3%83%90%E3%83%BC%E3%...
それから、コメント欄を開けておくと、補足などをしてもらえてお得です。
※参考URL
●Visual Basic 中級講座 - ポリモーフィズム
http://homepage1.nifty.com/rucio/main/VBdotNet/Advance/Advance2o...
●Chapter 10 継承とポリモーフィズム - @IT
http://www.atmarkit.co.jp/fdotnet/vb6tonet2/vbnet2_10/vbnet2_10_...
●明快入門 Visual Basic 2008 ビギナー編 (林晴比古実用マスターシリーズ) [大型本] 林 晴比古 (著)
明快入門 Visual Basic 2008 ビギナー編 (林晴比古実用マスターシリーズ)
再定義するとは継承元(スーパークラス)のメソッドを再度CALLすると考えてよろしいのでしょうか?
VBであれば、一番簡単な例はダイアログでしょう。
ダイアログクラスで簡単な画面を作るプログラムぐらいは既に作成されていると思います。その時点で、クラスの継承を使いこなしているのです。
ダイアログクラスを元に、いろいろ画面の上に部品を乗せて、アプリケーションを作っていると思います。
例えばOKボタンとかCANCELボタンを押すイベント関数は最初から作られていると思いますが、その中でもOKボタンを押してるっぽい関数を呼び出していると思います。
それが、継承元のクラスの関数です。その関数の中にはダイアログを閉じるプログラムが書かれています。
オーバーライドは、自分でOKとかCANCELの関数を作れば、それでもうオーバーライドです。
丁寧にありがとうございます。ピンと来ていないところはありますが、なんとなくわかってきました。
再定義するとは継承元(スーパークラス)のメソッドを再度CALLすると考えてよろしいのでしょうか?