java webserver-反射
反射:把java类中的各种结构(方法、属性、构造器、类名)映射成一个个的java对象
1、获取class对象
三种方式:对象.getClass(); 类名.class; Class.forName("包名.类名");
2、动态创建对象
clz.getConstructor().newInstance()
public class server {
public static void main(String[]args) throws ClassNotFoundException, InstantiationException, IllegalAccessException, IllegalArgumentException, InvocationTargetException, NoSuchMethodException, SecurityException
{
//三种方式获取class对象
//1、对象.getClass()
Class clz=new iphone().getClass();
//2、类.class()
clz =iphone.class;
//3、Class.forName("包名.类名")
clz=Class.forName("cn.sxt.oo.iphone");
//创建对象,用构造器
iphone ip=(iphone)clz.getConstructor().newInstance();
System.out.println(ip);
}
}
class iphone{
public iphone()
{
}
}