Java內(nèi)存結(jié)構(gòu)
內(nèi)存就是暫時對數(shù)據(jù)的一個存儲,他的存儲速度非常的快,但是他是暫時的存儲,從開機時開始存儲,掉電或關(guān)機之后數(shù)據(jù)全部丟失。內(nèi)存的生命周期就是開機和關(guān)機,開機的時候開始計算,關(guān)機什么都沒有了。優(yōu)點存儲速度快,缺點容易壞掉,如果開機的時候,一點反映都沒有,屏幕不亮鍵盤鼠標(biāo)不亮,這種情況下一般都是內(nèi)存條有問題。機器藍(lán)屏,指令錯誤都是內(nèi)存引起的。
程序的數(shù)據(jù)都是存儲在內(nèi)存里面,不存儲在硬盤上因為硬盤不安全,可以讀取數(shù)據(jù)。但是內(nèi)存就不一樣,內(nèi)存他不允許去讀取內(nèi)存數(shù)據(jù),并且速度很快所以我們的程序都是存儲在內(nèi)存里。
內(nèi)存就好比是一個未開端的一大片土地,要想在這片土地里種一些蔬菜隨便你種,但是不要把菜種到別人占用的地方。內(nèi)存也是如此訪問一些東西是允許你訪問的,但是如果這個內(nèi)容被人家占用了,你要想再去占用是不允許的。
我們的數(shù)據(jù)存儲在內(nèi)存之中,內(nèi)存中有很多數(shù)據(jù)存儲的單元格想存到哪都是是可以的,不過Java是沒有選擇性,Java的存儲的是由虛擬機來代理。
內(nèi)存的存儲單位:計算機是按位來存儲的,位(存儲的只能是0和1) 位是最小的存儲單位。 字節(jié)(8位等于1個字節(jié)) K(1024個字節(jié)等于1KB)M(1024K等于1M) G(1024M等于1G) T(1024G等于1T)P(1024T等于1P)。
程序的數(shù)據(jù)要存儲在內(nèi)存之中,必須要選擇大小來進(jìn)行存儲不能說小的東西也拿很大的去存儲,就比如你有一升的水那么就要存儲在杯子里面。如果有10生水你非得要存儲到杯子里,那是會溢出的,大的不能存儲在小的容器里會溢出,小的也不能存儲到很大的容器里那樣很浪費。如圖3.3所示:
圖3.3
Java數(shù)據(jù)類型
我們的編程語言數(shù)據(jù)想存儲在內(nèi)存之中那么首先得選擇一個存儲的大小這樣才不會浪費,那所謂的存儲大小就叫做數(shù)據(jù)類型。什么是數(shù)據(jù)類型?就要我們要把數(shù)據(jù)存儲在類型之中,我們需要給我們的數(shù)據(jù)選擇一種合適的類型去存儲,不至于浪費數(shù)據(jù),不至于浪費存儲大小。
Java的數(shù)據(jù)類型,各有各自的存儲大小,如果有不同的類型,就要找到不同的數(shù)據(jù)類型去存儲。所以程序要存儲到內(nèi)存之中就要選擇合適數(shù)據(jù)類型去存儲。
數(shù)值類型:
1.整數(shù):
2.浮點(小數(shù)):
3.字符類型:
4.布爾類型:
byte:8位表示一個字節(jié),也就是有8個0和1組成,他能組成256個標(biāo)識。什么是256個標(biāo)識?就是8個0和1在那擺在那互相的組合,總共能組合256個標(biāo)識,8位他能繼承最大的數(shù)是255,因為他從0開始,0~255。所以8位就是有8個0和1組成,總共組成256個描述,0~255個數(shù)值。如圖3.4所示:
4.png
short:16位,也就是有16個0和1組成,他能組成65536個標(biāo)識,0~65535個數(shù)值。
int:32位,也就是有32個0和1組成,他能組成4294967296個標(biāo)識,0~4294967295個數(shù)值。
long:64位,也就是有64個0和1組成,他能夠標(biāo)識地球上所有的數(shù)值。
float: 32位,32個0和1組成,小數(shù)能夠精確到6位左右。
double:64位,64個0和1組成,小數(shù)能夠精確到15位左右。
char:16位,他是由ASCLL字符表示的。
boolean: 標(biāo)識只有0和1,他是false true 真和假的意思,用來判斷的。
以上所述是小編給大家介紹的Java內(nèi)存結(jié)構(gòu)和數(shù)據(jù)類型,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對服務(wù)器之家網(wǎng)站的支持!