class类代表java类,它的各个实例对象又分别对应什么呢?
对应各个类在内存中的字节码,例如person类的字节码,ArrayList的字节码等等
一个类被类加载器加载到内存当中,占用一片存储空间,这个空间里的内容就是类的字节码,不同的类的字节码是不同的,所以它在内存中的内容是不同的,这一个个空间可以用一个个对象来表示,这些对象显然具有相同的类型,这个类型是什么呢?
如何得到各个字节码对应的实例对象(class类型)
类名.class 例如,system.class
对象.get class(),例如,new Date.class
Class.forName("类名")
反射:反射就是把JAVA类的各个成分映射成对应的JAVA类。
constructor代表类中的一个构造方法
得到某个类的所有的构造方法
例如:Constructor[] Constructors=
Class forName("java.lang.String").getConstructors();
得到某个类的一个构造方法:
Constructor Constructor=
Class forName("java.lang.String").getConstructor(StringBuffer.class);
//获得方法要用到类型;
创建实例对象:
通常方式:String str=new String(new StringBuffer("abc"));
反射方式: String str1=(String)Constructor.newInstrance(new StringBuffer("abc"));