來看看Integer和int的區別,Java為什麼要設計封裝類
2022-12-30由 你看到的科技之美 發表于 畜牧業
建構函式能過載嗎
本質上來說,這個問題是考察求職者對於面向物件的理解程度,也是在考察求職者的一個基本功了。其實越是簡單常見的一些東西,就越能體現求職者的基礎紮實的一個程度。
這個問題一般是考察一到三年開發經驗的同學,那麼在回答這個問題的時候,儘量從封裝型別的特性和功能全方位的去回答,
interger
是基本資料型別,
Int
的封裝類在
Java
裡面有八種基本資料型別,他們都有一一對應的封裝型別。
基本型別和封裝型別的區別有很多,比如說第一個
in
特型別,我們可以直接定義一個變數名稱賦值就好了,但是
inter
呢,需要去使用
new
關鍵字來建立物件。第二個基本型別和
inter
型別混合使用的時候,
Java
會自動透過拆箱和裝箱來實現型別的轉化,第三個
interger
作為一個物件型別啊,碰撞的一些方法和屬性,我們可以利用這樣一些方法來操作資料,第四個作為成員變數因。
在
Java
裡面,之所以要對基礎型別設計一個對應的封裝型別,因為
Java
本身是一門面向物件的語言,物件是
Java
的基礎操作單元,我們時時刻刻都在建立物件,也隨時都在使用物件,很多時候在傳遞資料的時候也需要用到物件型別,因此從這個點來說,封裝型別存在的意義就很大。其次,封裝型別其實還有很多好處,比如安全性比較好,可以避免外部操作隨意修改成員變數值,保證了成員變數和資料傳遞的安全性,隱藏的實現細節對使用者更加友好,只需要去呼叫物件提供的方法就可以完成對量操作。
我簡單羅列三個方面,第一個作為成員變數來說
,
Inter
的初始值是
null,
inter
的初始值
是
0
,
第二個它是儲存在對應記憶體裡面,因為它是一個物件,而
inter
型別,它是直接儲存在佔空間裡面。第三個
Inter
是一個物件型別,它封裝的很多的方法和屬性,我們在使用的時候會更加靈活。至於為什麼要設計成封裝型別,主要的原因是
Java
本身,它是一個面向物件的語言,一切操作都是以物件作為基礎的,比如說像集合裡面存的元素也只支援儲存
object
型別,普通型別是無法透過集合來儲存的。
以上就是我的理解。所以遇到特別基礎的問題的時候,先不用著急的回答,好好整理一下思路,找到這個問題的關鍵因素,然後以此為切入點去回答,一般這種情況下是沒什麼太大問題的。
歡迎在下方留下你的意見,一起交流學習。
圖片來源與網路,侵權聯絡刪除。