Javaのsuperキーワードの使い方は?
Javaのsuperキーワードには主に2種類の使い方があります。
- 親クラスのメソッドの呼び出し:子クラスのメソッドが呼び出されると、super キーワードを使って親クラスのメソッドを呼び出すことができます。この呼び出しは子クラスのメソッドの最初の行の文で行う必要があり、親クラスのメンバー変数の初期化と親クラスのメソッドを実行するために使用されます。例:
public class Parent {
private int age;
public Parent(int age) {
this.age = age;
}
}
public class Child extends Parent {
private String name;
public Child(int age, String name) {
super(age); // 调用父类的构造方法
this.name = name;
}
}
- 親クラスのメンバー変数やメソッドを呼び出す。 子クラスでは、親クラスのメンバー変数やメソッドにアクセスするために super キーワードを使用できます。これは、子クラスの中に親クラスと同じ名前のメンバー変数やメソッドがある場合に特に便利です。例えば:
public class Parent {
private int age;
public void display() {
System.out.println("Parent class");
}
}
public class Child extends Parent {
private int age;
public void display() {
super.display(); // 调用父类的display方法
System.out.println("Child class");
}
}
上記の例では、サブクラスのdisplayメソッドはsuper.display()を呼び出すことで、親クラスのdisplayメソッドを呼び出し、親クラスメソッドの再利用を実現しています。