javaの親クラスで子クラスのメソッドを呼び出す方法

Javaでは、多態性を使用して親クラスから子クラスのメソッドを呼び出す方法が1つあります。具体的な手順は次のとおりです。

  1. メソッドを持つ親クラスを定義します。メソッドはサブクラスからオーバーライドできます。
  2. 親クラスを継承し、そのメソッドをオーバーライドするサブクラスを定義する。
  3. 親クラスでは、親クラスのオブジェクトを作成し、子クラスのオブジェクトとして代入する。
  4. 親クラスのオブジェクトからメソッドを呼び出すと、サブクラスでオーバーライドしたメソッドが自動的に呼ばれる。

ネイティブな日本語で言い換えると次のようになります

class Parent {
public void method() {
System.out.println("父类方法");
}
}
class Child extends Parent {
@Override
public void method() {
System.out.println("子类方法");
}
}
public class Main {
public static void main(String[] args) {
Parent parent = new Child(); // 父类对象引用指向子类对象
parent.method(); // 调用子类方法
}
}

翻訳結果は次のとおりです。

子类方法

上記の例で、まず親クラスParentが定義され、メソッドmethodが含まれています。次に、親クラスParentから継承し、親クラスのメソッドmethodをオーバーライドした子クラスChildが定義されています。メイン関数で、親クラスのオブジェクトparentが作成され、子クラスのオブジェクトChildに割り当てられています。親クラスのオブジェクトparentを介してメソッドmethodを呼び出す場合、実際には子クラスChildのメソッドmethodが呼び出されます。これは、子クラスが親クラスのメソッドをオーバーライドしているためです。

bannerAds