搜尋
首頁JavaJava入門關於java中基本資料型別與引用資料型別的介紹

關於java中基本資料型別與引用資料型別的介紹

Nov 30, 2019 pm 03:43 PM
java基本資料類型

關於java中基本資料型別與引用資料型別的介紹

一、基本資料型別

byte:Java中最小的資料類型,在記憶體中佔8位(bit),即1個字節,取值範圍-128~127,預設值0

#short:短整數型,在記憶體中佔16位,即2個字節,取值範圍-32768~32717,預設值0

int:整數型,用於儲存整數,在記憶體中佔32位,即4個位元組,取值範圍-2147483648~2147483647,預設值0

long:長整型,在記憶體中佔64位,即8個位元組-2^63~2^63-1,預設值0L

float:浮點型,在記憶體中佔32位,即4個字節,用於儲存帶小數點的數字(與double的差別在於float型別有效小數點只有6~7位),預設值0

double:雙精度浮點型,用於儲存帶有小數點的數字,在記憶體中佔64位,即8個字節,預設值0

char:字符型,用於儲存單一字符,佔16位,即2個字節,取值範圍0~65535,預設值為空

boolean:布林類型,佔1個位元組,用於判斷真或假(只有兩個值,即true、false),預設值false

推薦相關學習影片:java線上影片

二、引用資料型別

類別、介面型別、陣列型別、列舉型別、註解類型。

區別:

基本資料類型在被建立時,在堆疊上給其劃分一塊內存,將數值直接儲存在堆疊上。

引用資料型別在被建立時,首先要在堆疊上給其引用(句柄)分配一塊內存,而物件的具體資訊都儲存在堆疊記憶體上,然後由堆疊上面的參考指向堆中對象的地址。

例如,有一個類別Person,有屬性name、age帶有參的建構方法

Person p = new Person("zhangsan",20);

在記憶體中的具體建立過程是:

1.首先在堆疊記憶體中為其p分配一塊空間;

2.在堆疊記憶體中為Person物件分配一塊空間,並為其三個屬性設初值"",0;

3.根據類別Person中對屬性的定義,為此物件的兩個屬性進行賦值運算;

4.呼叫建構方法,為兩個屬性賦值為"Tom",20 ;(注意這個時候p與Person物件之間還沒有建立聯繫);

5.將Person物件在堆疊記憶體中的位址,賦值給堆疊中的p,透過引用(句柄)p可以找到堆中物件的具體資訊。

相關知識:

靜態區: 保存自動全域變數和 static 變數(包括 static 全域和局部變數)。靜態區的內容在整個程式的生命週期內都存在,由編譯器在編譯的時候分配。

堆區:  一般由程式設計師分配釋放,由 malloc 系列函數或 new 運算子分配的內存,其生命週期由 free 或 delete 決定。在沒有釋放之前一直存在,直到程式結束,由OS釋放。其特點是使用靈活,空間比較大,但容易出錯。

堆疊區: 由編譯器自動分配釋放,保存局部變量,堆疊上的內容只在函數的範圍內存在,當函數運行結束,這些內容也會自動被銷毀,其特點是效率高,但空間大小有限。

文字常數區: 常數字串就是放在這裡的。   程序結束後由系統釋放。

更多相關文章教學請造訪:java程式設計入門

#

以上是關於java中基本資料型別與引用資料型別的介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:CSDN。如有侵權,請聯絡admin@php.cn刪除

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具