私は現在、ポリモーフィズムについて読んでいて、内容に少し混乱しています。私の本の動的バインディングに関するビットは、私も非常に混乱していますが、どの例を挙げればよいかわかりません。おそらく、動的バインディングがどのように機能するかを説明する簡単な例を与えることができますか? 私が知っているのは、特定のタイプでメソッド(?)を呼び出すと、インスタンスが関連付けられている最も具体的なメソッドが呼び出されるということだけです。
また、equals メソッドを使用する場合、Java の equals メソッドを次のようなメソッドでオーバーライドするのはなぜ悪い習慣なのでしょうか。
public boolean equals(Circle circle){
return this.radius == circle.radius;
}
とは対照的に
public boolean equals(Object circle){
return this.radius == ((Circle)circle).radius;
}
ごちゃごちゃしていて申し訳ありませんが、私はこれらの重要な概念を理解するのに苦労しています。前もって感謝します。