#在千鋒“逆戰”學習第21天#finalize()方法、包裝類、String類

finalize方法
當對象被判定爲垃圾對象時,有JVM自動調用此方法,用以標記垃圾對象,進入回收隊列。

垃圾對象:沒有有效引用指向此對象時,爲垃圾對象。

垃圾回收:由GC銷燬垃圾對象,釋放數據存儲空間。

自動回收機制:JVM內存耗盡,一次性回收所有垃圾對象。

手動回收機制:使用System.gc();通知JVM進行垃圾回收。

包裝類

什麼是包裝類?
基本數據類型所對應的引用數據類型 如下圖
在這裏插入圖片描述
注意:Object類可統一所有數據,包裝類的默認值是null。

類型的轉換與拆箱、裝箱
8種包裝類提供不同類型間的轉換方式
Number父類提供6個共性方法 將自身類型轉化成其他數字類型 ex:

Byte b1 = new byte("10");

int b2 = b1.intValue();
double b3 = b1.doubleValue();
float b4 = b1.floatValue();
short b5 = b1.shortValue();
long b6 = b1.longValue();

parseXXX(String s)靜態方法,八種類型都有 ex:

parseByte("123");
parseShort("123");
parseDouble("123.45");
......

valueOf(基本類型),valueOf(字符串類型),靜態轉型方法,8種類型都有 ex:

Byte b1 = Byte.valueOf((byte)10);

Byte b2 = Byte.valueOf("10");

注意:需保證類型兼容,否則拋出NumberFormatException異常

JDK5.0之後,自動裝箱、拆箱。基本數據類型和包裝類自動轉換。ex:

Byte b1 = 10;

int i = b1;

整數緩衝區
Java預先創建了256個常用整數包裝類型對象。
這256個整數對象中相同整數的地址是相同的。

在實際應用當中,對已創建的對象進行復用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章