Java には、オーバーロードとオーバーライドという 2 つのタイプのポリモーフィズムがあります。メソッドのオーバーロードは、2 つのタイプのポリモーフィズムのうちの 1 つです。
たとえば、人に「エリア検索」操作を依頼すると、どのエリアを探しているのかと尋ねられるかもしれません。
関数多態性とは、オブジェクトが対応するメッセージに基づいて対応する動作を生成できるように、さまざまなメッセージを関数に渡すことができることを意味します。オブジェクトの動作はクラス内のメソッドを通じて反映されるため、動作の多態性はメソッドのオーバーロードです。
メソッドのオーバーロードの構文規則:
メソッドのオーバーロードとは、クラス内に同じ名前の複数のメソッドが存在できるが、これらのメソッドのパラメーターは異なっていなければならないことを意味します。パラメータの数が異なるか、パラメータの数は同じですが、パラメータ リスト内の対応するパラメータの型が異なります。
例えば:
classPeople{floathello(inta,intb){returna+b;}floathello(longa,intb){returna-b;}doublehello(doublea,intb){returna*b;}}publicclassMain{publicstaticvoidmain(Stringargs[]){Peopletom= newPeople();System.out.println(tom.hello(10,10));System.out.println(tom.hello(10L,10));System.out.println(tom.hello(10.0,10) );}}
実行結果は次のとおりです。
20.00.0100.0
知らせ:
2 つのメソッドの名前が同じ場合、戻り値の型が異なっていてもパラメータは異なる必要があります。