- オーバーロード - 同じクラス内の異なる署名を持つ同じメソッド。
- オーバーライド - サブクラスでの同じメソッド シグネチャの異なる実装
親クラスにオーバーロードされたメソッドがある場合、子クラスはこの特定のメソッドをオーバーロードまたはオーバーライドしますか?
親クラスにオーバーロードされたメソッドがある場合、子クラスはこの特定のメソッドをオーバーロードまたはオーバーライドしますか?
オーバーロードとオーバーライドは相互に排他的ではありません。
class Parent {
void foo() {}
void foo(int a) {}
void bar() {}
}
class Child extends Parent {
void foo() {} // overriding and overloading
void foo(double b) {} // overloading
void bar() {} // overriding
}
実際には両方の理由: