反射:把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(){}}