38

superJava でのキーワードの意味と使用法は何ですか?

4

5 に答える 5

63

superJavaのキーワードです。これは、直接の親のプロパティを指します。

super()            //refers parent's constructor
super.getMusic();  //refers to the parent's method

- 続きを読むsuper

于 2011-02-28T11:30:02.453 に答える
39

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()、親のコンストラクターを呼び出し、サブクラスのコンストラクターからのみ呼び出すことができます (間違っている場合は誰かが私を修正してください)。

于 2011-02-28T11:33:16.870 に答える
4

super キーワードは Android 固有のものではありません。これは OOP に属する概念であり、それを使用するクラスの親クラスを表します。Android では、独自のアクティビティまたはコンポーネントを作成するときに最も役立ち、独自のアクティビティまたはコンポーネントを実装する前にデフォルトの動作を呼び出すことができます。

たとえば、Activity onPause、on Resume、onStop などのメソッドをオーバーライドする場合は、何よりも先にスーパー メソッドを呼び出す必要があります。

詳細については、オブジェクト指向プログラミングの本や Java プログラミングの本を参照することをお勧めします。

于 2011-02-28T11:31:00.760 に答える
4

別のクラスから継承する場合、継承元のクラスのメソッドをオーバーライドしたい場合があります。

これを行う場合、オーバーライドされたメソッドを最初に呼び出してから、何かを実行する必要がある場合があります。その場合は、super(); と書きます。

継承に関するいくつかのリンクを次に示します。プログラミングでは非常に重要です: Wiki の継承

オラクルからの簡単な説明

于 2011-02-28T11:31:04.240 に答える