反射获取Class对象的3种方法
1 Class c = Class.forName("Person");
2 Class c = Person.class;
3 Person p = new Person();
Class c = p.getClass();
Class类的一些方法
1 getMethod() 获得Method对象
因为存在同方法名不同参数这种情况,所以只有同时指定方法名和参数类型才能唯一确定一个方法
c.getMethod("speed", new Class[] { int.class,int.class })
参数1:String 方法名 参数2:Class[]
2 getMethods() 获得Method[]
3 getSimpleName 获得类名
4 getConstructor 获得 Constructor对象
同getMethod 存在不同类型的构造器
c.getConstructor(new Class[] { int.class,int.class })
Method类的最常用方法
1 invoke invoke(Object obj, Object... args) 执行这个方法
参数1:Method所在类的一个对象 参数2:Object类数组 new Object[]{"Java",new Integer(10)}