验证中...
Languages: Java
Categories: 其他
Latest update 2018-12-09 10:10
Snippet 1 Snippet 2
gistfile1.txt
Raw Copy
import java.lang.reflect.Method;
import edu.taru.example.Hero;
public class Test2 {
//反射
public static void main(String[] args) {
//四种方式获得类型信息
Class clazz=Hero.class;//通过类名
Hero h=new Hero();
h.getClass();//通过实例
//通过权限定类名(包名+类名)
try {
Class clazz1=Class.forName("edu.taru.example.Hero");
Object instance=clazz1.newInstance();//实例化
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
catch (ClassNotFoundException e) {
e.printStackTrace();
}
//只用于包装类
Class clazz3=Integer.TYPE;
//动态的获取方法内容
Method[]methods=clazz.getDeclaredMethods();//无法获得继承的方法
Method[]methods1=clazz.getMethods();//可以获得继承的方法,但得是公开的方法
for(Method m:methods){
System.out.println(m);
}
}
}
package edu.taru.example;
Raw Copy
package edu.taru.example;
public class Hero {
public void kill(){}
public void run(){}
}

Comment list( 0 )

You need to Sign in for post a comment

Help Search