1. 程式人生 > >深入拆解虛擬機器(二)Java的基本型別

深入拆解虛擬機器(二)Java的基本型別

Java基本型別

(1)boolean型別在Java虛擬機器中被對映為整數型別:"true"被對映為1,"false"被對映為0。Java中的邏輯運算以及條件跳轉,都是用整數相關的位元組碼來實現的

(2)除boolean型別外,Java還有另外7個基本型別。它們擁有不同的值域,但預設值在記憶體中均為0。在這些基本型別之中,浮點型別比較特殊。基於它的運算或比較,需要考慮+0.0F、-0.0F以及NaN的情況

(3)除Long和double外,基本型別與引用型別在解釋執行的方法棧幀中佔用的大小是一致的,但它們在堆中佔用的大小確不同。在將boolean、byte、char以及short的值存入欄位或者陣列單元時,Java虛擬機器會進行掩碼操作。在讀取時,Java虛擬機器則會將其擴充套件為int型別