
Java では、サブクラスのコンストラクターを実行する前、またはサブクラスで明示的にコンストラクターが指定されていない場合、親クラスのパラメーターなしのコンストラクターが自動的に呼び出されます。
(ビデオ チュートリアルの推奨: java コース)
スーパーの 3 つの使用例:
親クラス メソッドでオーバーライドされたメソッドにアクセスします。
親クラスのコンストラクターを呼び出します。
親クラスの非表示のメンバー変数にアクセスします。
サンプルコード:
class A{
int a;
A(){
a = 3;
System.out.println(a);
}
void dosomething(){
System.out.println("A");
}
}
class B extends A{
int a;
B(){
a = 5;
System.out.println(a);
}
void dosomething(){
super.dosomething();
System.out.println("B");
}
}(推奨チュートリアル: java 入門チュートリアル)
mainメソッドで実行した場合
B b = new B(); b.dosomething();
出力結果:
3 5 A B
親クラスのコンストラクターをサブクラスに継承することはできません。サブクラスは、独自のコンストラクターまたはデフォルトのパラメーターなしのコンストラクターのみを使用できます。
親クラスでパラメーター付きのコンストラクターを定義し、サブクラスでパラメーターなしのコンストラクターを定義すると、コンパイラーによって自動的に super() が追加され、エラーが発生します。 (親クラスには、対応するパラメーターなしのコンストラクターがありません)
以上がJavaでのスーパーキーワードの使用法は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。