用來加載經過javac編譯成的.class文件。jvm虛擬機當中的類加載器負責加載這些編譯好的類字節文件,先通過一系列的處理,而後緩存到咱們的JVM虛擬機中。供程序隨時使用。java
class 聲明類型緩存
Class 描述java類的組成成分(名字、屬性、路徑、父類、構造方法、普通方法)框架
Class 實例化的方式? 加載到虛擬的這個模板字節 創造一個實際的對象出來
大寫的Class是描述咱們的java類jvm
String s = "獲取Class對象"; //1實例化對象.getClass() Class clazz1 = s.getClass(); //2 類.class Class clazz2 = String.class; //3各類框架經常使用 Class.forName(); Class clazz3 =Class.forName("java.lang.String"); System.out.println(clazz1 == clazz2);//true System.out.println(clazz1 == clazz3);//true System.out.println(Integer.class == int.class);//false System.out.println(Integer.TYPE == int.class);//true //八大簡單基本類型 void 是咱們的九大預約義 Class clazz4 = int.class; System.out.println(clazz3.isPrimitive()); //false String 也是一個封裝類 System.out.println(clazz4.isPrimitive()); //true int是預約義的 //獲取String傳入StringBuffer構造方法 Constructor constructor = clazz3.getConstructor(StringBuffer.class); //使用構造方法 實例化一個String對象 String ss = (String)constructor.newInstance(new StringBuffer("aaaa")); System.out.println(ss);
反射就是將一個類的組成部分映射成相應的java對象 字節模板 他的每部分的字節模板code