JAva反射メカニズム学習(一):Classクラスのインスタンス化
1486 ワード
まずSUserクラスを定義し、後でテストするのに便利です.コードは次のとおりです.
反射といえば、まずclassクラスについてお話ししますが、具体的な操作説明はヘルプドキュメントではっきり言っていますので、ここでは省略します.classをインスタンス化する3つの方法について話しましょう.
package com.wjl.reflect;
public class SUser {
private String userName;
private String passWord;
public SUser(){//
}
public SUser(String userName) {
this.userName = userName;
}
public SUser(String userName, String passWord) {
this.userName = userName;
this.passWord = passWord;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassWord() {
return passWord;
}
public void setPassWord(String passWord) {
this.passWord = passWord;
}
@Override
public String toString() {
return " :"+userName+", :"+passWord;
}
}
反射といえば、まずclassクラスについてお話ししますが、具体的な操作説明はヘルプドキュメントではっきり言っていますので、ここでは省略します.classをインスタンス化する3つの方法について話しましょう.
package com.wjl.reflect;
// : Class
public class GetClassInstanceDemo01 {
public static void main(String[] args) {
// Class
Class> c1 = null;
Class> c2 = null;
Class> c3 = null;
//1、 forName( )
try{
c1 = Class.forName("com.wjl.reflect.SUser");// +
}catch(ClassNotFoundException e){
e.printStackTrace();
}
//2、 object
c2 = new SUser().getClass();
//3、 .class
c3 = SUser.class;
System.out.println(" 1:"+c1.getName());
System.out.println(" 2:"+c2.getName());
System.out.println(" 3:"+c3.getName());
}
}