如何获得JAVA源文件的属性及类型
请问有谁知道如何解析JAVA源文件的?
读取该文件把属性、属性类型、方法等信息取出来
急救!
已知的是ECLIPSE下JDT库中有方法可以解决,但怎么找都找不到如何使用
平台:ECLIPSE3.2,JDK1.5
------解决方案--------------------File f=new File();
------解决方案--------------------你可以用反射,输入该对象的全路径带包名和类名。
这样就可以取出该类的所有属性和方法拉。
//有数据的bean
package utilbeans;
public class UtilsBeansOne {
public UtilsBeansOne() {
}
public String getPassword() {
return password;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public void setPassword(String password) {
this.password = password;
}
private String userName = "张三 ";
private String password = "123456 ";
}
//////////////////////////////////////////
没有数据的bean
package utilbeans;
public class UtilsBeansTwo {
public UtilsBeansTwo() {
}
public String getPassword() {
return password;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
System.out.println(userName);
this.userName = userName;
}
public void setPassword(String password) {
System.out.println(password);
this.password = password;
}
private String userName = null;
private String password = null;
}
///////////////////////////////////////////
具体的填充方法
package utilbeans;
import java.lang.reflect.Method;
import java.lang.reflect.*;
public class UtilsBeansTest {
public UtilsBeansTest() {
}
/**
* 此功能为将第一个对象的内容填充到第二个对象中
* @param oneObject String 内容已经存在的对象
* @param twoObject String 要填充的对象
*/
public static Object utilBean(String oneObject, String twoObject) {
Class utilOneClass = null;
Class utilTwoClass = null;
try {
//将字符串转化为Class对象
utilOneClass = Class.forName(oneObject);
utilTwoClass = Class.forName(twoObject);
} catch (
ClassNotFoundException ex) {
System.out.println(ex.toString());
return null;
}
Object objUtilBeanOne = null;
Object objUtileBeanTwo = null;
try {
//创建对象实例
objUtilBeanOne = utilOneClass.newInstance();
objUtileBeanTwo = utilTwoClass.newInstance();
} catch (
IllegalAccessException ex1) {
System.out.println(ex1.toString());
return null;
} catch (
InstantiationException ex1) {
System.out.println(ex1.toString());
return null;