この記事では主に Java の this.getClass() と super.getClass() の例に関する関連情報を紹介します。必要な方は参考にしてください
this.getClass() と super.getClass() の詳細な説明) in Java 例
まえがき:
this.getClass() と super.getClass() の戻り値に出会ったときは混乱しましたが、調べてみると突然明らかになりました。
getClass() は Java の Object クラスのメソッドであり、そのプロトタイプは次のとおりです:
public final Class<?> getClass()
戻り値は、現在のランタイム クラスの Class オブジェクトです。
そこで、説明するためにコードを書きました:
getClass() は this と super の影響を受けませんが、現在実行中のクラスによって決定されます。
コードは次のとおりです:
親クラス:
package com.cyou.lijiang_hw; import java.lang.reflect.ParameterizedType; public class BaseDAO { public BaseDAO() { System.out.println("==============BaseDAO initialization============="); System.out.println("this.getClass() ---->" + this.getClass()); System.out.println("super.getClass()---->" + super.getClass()); } }
サブクラス:
package com.cyou.lijiang_hw; public class UserDAO extends BaseDAO<User> { public UserDAO() { System.out.println("\n==============UserDAO initialization============="); System.out.println("this.getClass() ---->" + this.getClass()); System.out.println("super.getClass()---->" + super.getClass()); } }
テストクラス:
package com.cyou.lijiang_hw; public class Test { public static void main(String[] args) { UserDAO userDAO = new UserDAO(); } }
出力結果は次のとおりです:
以上がJava の this.getClass() および super.getClass() に関するケースの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。