Java で次のコードがあるとします。
class A {
public int add(int a , int b) {
return (a+b);
}
}
class B extends A {
public float add(float a , float b) {
return (a+b);
}
この特定のケースでは、サブクラスは基本クラスのadd
関数を正確にオーバーライドしていません。これは、サブクラスが異なるシグネチャを持ち、オーバーロードの概念が同じスコープ内にある場合にのみ発生するためです。では、add(float , float)
サブクラスの関数B
はまったく新しい関数として扱われ、オーバーロードとオーバーライドの概念は適用されませんか? 「静的バインディング」または「動的バインディング」を使用しますか?