super
Java でのキーワードの意味と使用法は何ですか?
5 に答える
super
Javaのキーワードです。これは、直接の親のプロパティを指します。
super() //refers parent's constructor
super.getMusic(); //refers to the parent's method
super
キーワードは、現在のオブジェクトの親クラス (Object
暗黙的に) のインスタンスを参照します。これは、サブクラスのメソッドをオーバーライドするが、親クラスで定義されたメソッドを呼び出したい場合に便利です。例えば:
class ClassOne {
public say() {
System.out.println("Here goes:");
}
}
class ClassTwo extends ClassOne {
public say() {
super.say();
System.out.println("Hello");
}
}
今、new ClassTwo().say()
出力します:
Here goes:
Hello
他の人が述べたようにsuper()
、親のコンストラクターを呼び出し、サブクラスのコンストラクターからのみ呼び出すことができます (間違っている場合は誰かが私を修正してください)。
super キーワードは Android 固有のものではありません。これは OOP に属する概念であり、それを使用するクラスの親クラスを表します。Android では、独自のアクティビティまたはコンポーネントを作成するときに最も役立ち、独自のアクティビティまたはコンポーネントを実装する前にデフォルトの動作を呼び出すことができます。
たとえば、Activity onPause、on Resume、onStop などのメソッドをオーバーライドする場合は、何よりも先にスーパー メソッドを呼び出す必要があります。
詳細については、オブジェクト指向プログラミングの本や Java プログラミングの本を参照することをお勧めします。
別のクラスから継承する場合、継承元のクラスのメソッドをオーバーライドしたい場合があります。
これを行う場合、オーバーライドされたメソッドを最初に呼び出してから、何かを実行する必要がある場合があります。その場合は、super(); と書きます。
継承に関するいくつかのリンクを次に示します。プログラミングでは非常に重要です: Wiki の継承