建设银行的网站查询密码,优化 保证排名,宣武成都网站建设,做相同网站违法吗//获得类类型的两种方式 1、 Class cls1 Role.class; 2、 Class cls2 Class.forName(yui.Role); 注意第二种方式中#xff0c;forName中的参数一定是完整的类名#xff08;包名类名#xff09;#xff0c;并且这个方法需要捕获异常。 现在得到cl…//获得类类型的两种方式 1、 Class cls1 Role.class; 2、 Class cls2 Class.forName(yui.Role); 注意第二种方式中forName中的参数一定是完整的类名包名类名并且这个方法需要捕获异常。 现在得到cls1就可以创建一个Role类的实例了利用Class的newInstance方法相当于调用类的默认的构造器 Object o cls1.newInstance(); //创建一个实例 //Object o1 new Role(); //与上面的方法等价 这样就创建了一个对象缺点是我们只能利用默认构造函数因为Class的newInstance是不接受参数的后面会讲到可接受参数的newInstance 第二如果类的构造函数是private的比如Class我们仍旧不能实例化其对象。 首先介绍一下Constructor类这个类用来封装反射得到的构造器Class有四个方法来获得Constructor对象 public Constructor?[] getConstructors() 返回类中所有的public构造器集合默认构造器的下标为0 public ConstructorT getConstructor(Class?... parameterTypes) 返回指定public构造器参数为构造器参数类型集合 public Constructor?[] getDeclaredConstructors() 返回类中所有的构造器包括私有 public ConstructorT getDeclaredConstructor(Class?... parameterTypes) 返回任意指定的构造器 从名字来看还是很好懂的带上Declared的都是获得所有的构造方法包括私有 //指定参数列表获取特定的方法 Constructor con cls1.getDeclaredConstructor(new Class[]{String.class}); //获取含有只有一个String con.setAccessible(true); //设置可访问的权限 Object obj con.newInstance(new Object[]{liyang}); //注意这里Constructor的newInstance方法就可以设置参数了 System.out.println(obj); //打印一下这个对象的信息 public Field getDeclaredField(String name) 获取任意指定名字的成员 public Field[] getDeclaredFields() 获取所有的成员变量 public Field getField(String name) 获取任意public成员变量 public Field[] getFields() 获取所有的public成员变量 其他的非构造方法获取也是类似的转载于:https://www.cnblogs.com/qiyongliang/p/3837385.html