JAva反射メカニズムの大まかな理解


JAva反射メカニズム:
対象:Class,Object,
関数:Classクラス:【forName(String className):static;getClass():public】,Objectクラス:【getClass():public】.
Class
Classもオブジェクトですが、構造関数では取得できません.jvmによって生成されます.上記の2つの方法でインスタンスを取得し、次の3つの方法を加えます.
1.ObjectクラスによるgetClass()メソッド.例:
Class c1 = new String("").getClass();
2.Classクラスの静的メソッドであるforName()によって実現されます.
Class c2 = Class.forName("MyObject");
3.Tが定義されたタイプである場合、javaでは、その.classファイル名:T.classは、一致するClassオブジェクトを表します.たとえば、次のようにします.
Class c3 = Manager.class;
Class c4 = int.class;
Class c5 = Double[].class;
例:
1 Class c = new String("").getClass();

2 System.out.println(c.getClass());

この結果は
java.lang.Class
ここでもう一つ注意しなければならない点は、javaでどんなクラスを言うか、前のパッケージ名に従わなければならないことです.
先日の質問:
return Class.forName("mapPart."+XMLUtil.getClassName()).newInstance();
最初はreturn Classと書きましたforName(XMLUtil.getClassName()).newInstance();
XMLUtilは自分で書いたxml解析クラスで、getClassName()はStringタイプのWTObjectなどを返します.このWTObjectがパッケージに含まれている場合は、パッケージ名forName()を付けなければ見つかりません.