Java反射小样例

来源:互联网 发布:淘宝集美海外专营店 编辑:程序博客网 时间:2024/04/30 11:21

java中的反射机制,可以根据配置文件提供的类名, 动态的加载一个类对象到程序中, 并使用, 可提高程序的可扩展性》 eg:


import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;public class ReflectSample{public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException{Class c = Class.forName("T");Object o = c.newInstance();Method[] mArr = c.getMethods();for (Method m:mArr){if (m.getName().equals("mm")){m.invoke(o);}if (m.getName().equals("bigThan")){Class[] paraTypeArr = m.getParameterTypes();for (Class cl:paraTypeArr){System.out.println(cl.getName());}Class returnType = m.getReturnType();System.out.println(returnType.getName());}}}}class T{static {System.out.println("T loaded!");}public T(){System.out.println("T Constructor");}public void mm(){System.out.println("mm  Method");}public boolean bigThan(int a, int b){if (a<b)return false;return true;}}


原创粉丝点击