[英]Java - uninitialized static variable in .class file
在c中,未初始化的靜態變量在可執行文件中不占用空間。
Java呢? static variable
是否會占用.class
文件中的空間?
提示:問題是關於磁盤空間,而不是內存。
所有字段在類文件中都有一個條目,其中提供了名稱,類型,標志(最終,公共,易失性,靜態等)以及其他數據。
如果您考慮一下,它一定是這種方式。 Java不是C,其中變量只是bss中的某個位置或其他位置。 您需要進行反射以及運行時類型檢查,因此必須維護所有這些信息。
如果該字段已初始化,則在類文件中將有其他數據進行初始化(該方法中的ConstantValue屬性或字節碼)。 但是,即使未初始化的字段也必須在類文件中具有該字段條目。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.