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 サイトの他の関連記事を参照してください。