1. 程式人生 > >物件初始化和GC

物件初始化和GC

構造方法constructor 

用於物件的初始化

1.通過new關鍵字呼叫!

2.構造器雖然有返回值,但不能定義返回值型別

3.構造器名和類名相同

4.如果我們沒有定義構造器,則編譯器會自動定義一個無參構造

垃圾回收機制GC

(c++上沒有)java的改進

1.發現無用物件

2.回收無用物件佔用的記憶體空間。

物件建立的過程和this

物件的建立的過程

1.分配物件空間,並將物件成員變數初始化為0,false或者為null;

2.執行屬性值的顯式初始化

3.執行構造方法

4.返回物件的地址給相關變數

this

this本質是建立好的物件的地址。構造方法中也可以使用this代表當前物件

可以通過this區分區域性變數和成員變數

可以通過this呼叫構造器

構造器呼叫必須為第一句

this不能存在於static中(this不能在方法區)

static

static宣告的成員變數為靜態成員變數,也稱為類變數。類變數與類的生命週期相同,在整個程式執行期間都有效。

static修飾的方法和成員變數都是從屬於,隨類載入

而普通變數和方法從屬於物件的。

構造方法用於物件的初始化,

靜態初始化塊用於類的初始化操作

靜態初始化塊向上追溯一直到根