オーバーロード |
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
|
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
オーバーロード
同じ名前でも、渡す値(引数)が違えば
別のメソッド扱いになること。
つまり、オーバーロードを利用することで
同じ名前のメソッドを複数作ることができる。
日本語で多重定義と言う。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
オーバーライドの例(スポーツカークラス)
1、内容を考える
いろいろな機能を持ったアクセルが作る。
オーバーロードを使うことで
同じ名前で機能の違うメソッドを作ることが出来る。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
2、クラスを設計する
オーバーロードで同名のメソッドを複数作る場合
他の同名メソッドと渡す値(引数)を変えて定義すること。
例ではアクセルメソッドでも引数が全て違う。
つまり、引数でメソッドを見分ける。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
オーバーロードの条件
同じ引数のメソッドがあってはいけない。
オーバーロードするメソッドは渡す値(引数)の型や個数、
並び順まで注意する必要がある。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
3、作ったインスタンス使う
オーバーロードしたメソッドは全て使える。
渡す値(引数)で実行するメソッドが変わる。
使いたいメソッドを渡す値(引数)で選択して呼び出す。
オーバーロードを使うことで、
同じような機能を持っているのが分かりやすくなり
機能のバリエーションを作ることが可能。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
 |
|