验证中...
本周日(5月27日)码云企业技术分享会【微服务】专场将与你相约上海。阿里、华为、ThoughtWorks的技术大咖齐聚,等你来撩!
Languages: Java
Categories: 其他
Latest update 2018-05-17 23:31
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

9_float_left_people 9_float_left_close