mrn’s diary

反省してます

JavaリフレクションAPI -Classクラス-

JVMは内部に大量の情報を管理しているがその中のひとつに

実行時型情報というものがある 

 

・例

その型、クラスがどんなメソッド、フィールドをもっているか

クラス自体にはpublicがついているかなど

 

上記のような情報を実行中(開発時ではない!)に取得、利用したい場合は

リフレクションAPIと呼ばれるクラスを持ちいる

 

クラスに関する情報には以下の方法がある

Class.forName(FQCN 文字列);

クラス名.class;

変数名.getClass();

 

メソッド

getName() FQDNを取得する

クラス名部分のみを取得する getSimpleName()

所属するパッケージ情報を返す getPackage()

親クラスの情報を取得 getSuperclass()

インターフェースかを判定