同名で引数リストだけが違う物を定義でき、これをオーバーロードと呼びます。書いた時、実際には「どのMが呼ばれるか」という検索処理が必要になります。resolution)と呼びます。いうルールでオーバーロード解決を行っているのかについて説明して行きます。「より一致度の高いものを選ぶ」という方針になっています。詳しくは後々説明して行くことになりますが、例えば以下のようなルールになっています。引数の型は、以下のリストの上の方ほど「一致度が高い」と判断されます。いろんな型を受け付けるものほど「不一致」です。上の方に書いたものほど優先的に呼ばれます。上から順に候補になる。上の方を消さないと、下の方が呼ばれることはない。次がジェネリックなやつ。型変換が要らないので一致度が高いという扱い。基底クラスは、階層が近い方が優先。次に、インターフェイス、暗黙的型変換が同率。違って、クラスは明確に基底クラスが上。