「Java8」リフレクション(reflection)でクラスの情報を取得する

環境
Eclipse 2019
Java8
Windows 10 64bit

書式
Class<?> 変数 = クラス.class;
クラス情報を取得したいクラス名に.classを追加して、クラス情報のインスタンス(Classクラス)を取得します。

使用例

package com.arkgame.testinfo;

public class TestUser {

      public static void main(String[] args) {

            //Classクラスのインスタンスを取得
            Class<?> cft = User.class;
            //getSimpleName
            System.out.println("クラス名: " + cft.getSimpleName());
            //getPackage
            System.out.println("パッケージ名: " + cft.getPackage());
            //getName
            System.out.println("パッケージ名 クラス名(FQCN): " + cft.getName());

      }

}
//クラスUserの定義
class User {
      private int age = 12;
      private String username = "yamada";
}

実行結果
クラス名: User
パッケージ名: package com.arkgame.testinfo
パッケージ名 クラス名(FQCN): com.arkgame.testinfo.User

Java

Posted by arkgame