什麼是class文件
- 能夠被jvm識別,加載並執行的文件格式。
如何生成一個class文件
- 通過ide自動生成
- javac命令
class文件的作用
- 記錄一個類文件中的所有信息。attention ,是所有。
- class文件中的信息,遠遠大於java源代碼文件的信息。
class文件的格式詳解
-
一種8位字節的二進制流文件。
-
各個數據按順序緊密的排列,無間隙。
-
每個類或接口都單獨佔據一個class文件。
-
class文件結構:
class文件中的所有字段:
u4:代表無符號(unsigned)的4字節
cp_info:通常是一個結構體類型,內部還包含若干屬性內容。
field_info、method_info、attribute_info同上。 -
查看class文件結構:
Mac:安裝010editor,編譯class文件後可以看到和上圖的結構一樣。
-
class文件的弊端
- 內存佔用大,不適合移動端。
- 堆棧的加棧模式,加載速度慢。
- 文件io操作多,類查找慢。