Class n=Class.forName("fanshe.Service1");
Object obj=n.newInstance();
//获得该类与父类的所有的公共成员方法
Method[] method1=n.getMethods();
for(Method m1 : method1){
System.out.println(m1);
}
System.out.println("--------------------------------------------------------------------------------");
//获取该类的所有类型的成员方法
Method[] method2=n.getDeclaredMethods();
for(Method m1 : method2){
System.out.println(m1);
}
打印结果:
public int fanshe.Service1.getAge()
public void fanshe.Service1.setAge(int)
public void fanshe.Service1.doService1()
public final void java.lang.Object.wait(long,int) throws java.lang.InterruptedException
public final native void java.lang.Object.wait(long) throws java.lang.InterruptedException
public final void java.lang.Object.wait() throws java.lang.InterruptedException
public boolean java.lang.Object.equals(java.lang.Object)
public java.lang.String java.lang.Object.toString()
public native int java.lang.Object.hashCode()
public final native java.lang.Class java.lang.Object.getClass()
public final native void java.lang.Object.notify()
public final native void java.lang.Object.notifyAll()
--------------------------------------------------------------------------------
public int fanshe.Service1.getAge()
public void fanshe.Service1.setAge(int)
public void fanshe.Service1.doService1()
本文通过一个具体的Java示例,展示了如何使用反射机制加载类、创建实例,并获取类的所有公共方法及所有类型的成员方法。文中详细列举了通过反射获取到的方法列表,包括类自身的方法和继承自Object类的方法。
1869

被折叠的 条评论
为什么被折叠?



