JAVA 基本類型變數和參考型別變數

來源:互聯網
上載者:User

標籤:

一休:愚公,我又有困惑了。

愚公:說說看。

一休:我知道Java有8種基本類型,又發現對應有8個封裝類(Warper),它們起到的作用是相同的,都表示一種類型的數。於是我就隨手編了一句:

int i=Ineger(8);

結果編譯出錯了。

愚公:編程不能想當然。Java的物件導向的原則是資料和資料之上的操作要綁定在一起,這就是類,即引用資料類型。因此,類也是一種類型。Java本來可以不設定基本類型,只是為了提高操作效率,才設定了基本類型。基本類型和參考型別的最主要區別是:

基本類型的變數名是變數本身。

參考型別變數的名字是複雜資料的儲存地點。

這兩種類型的對應儲存方式6所示。


 

一休:這個問題我明白一點的,例如基本類型表示簡單資料,參考型別表示複雜資料。

愚公:那你舉個例子看看。

一休:比如說,多少錢、多長、多高等這些簡單的資料就可以用基本類型表示。較複雜的事物,就用參考型別表示,如汽車、動物等,這些事物包含很多特性和行為,也就是屬性和操作。

愚公:可以這樣理解。關於對象,有很多概念需要理解清楚。例如,下面的聲明:

String s="Hello world!";

許多人都寫過這樣的語句,但是,我們到底聲明了什麼呢?一休,你回答一下。

一休:聲明了一個String對象,內容是"Hello world!"。

愚公:這樣的回答還是比較模糊,準確的回答是這個語句建立了一個字串對象,另外它聲明了一個指向對象的引用,名為s。它可以指向類型為String的任何對象,目前指向"Hello world!"這個String類型的對象。

一休:也就是說,我們聲明了一個只能指向String對象的引用變數s,並且將s指向了字串對象"Hello world!"。

愚公:是的,如果在剛才的語句後面再補充一句代碼:

String string=s;

是不是又聲明了一個新的對象呢?

一休:是的,聲明了一個新的對象string。

愚公:不對,我們是聲明了另外一個指向String對象的引用,名為string,並沒有第二個對象產生,string還是指向原來的對象,也就是和s指向同一個對象。String類要弄清楚,因為這個類弄清楚了,許多類就好理解了。

一休:String類這麼重要嗎?

愚公:是的,因為這個類使用的頻率很高,包含許多定製好的屬性和方法,我們可以直接使用,而且這個類是final類,我們不能繼承它,也不能繼承和利用多態性修改它的方法。
一休:那我今後一定好好研究它!

JAVA 基本類型變數和參考型別變數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.