this
private void setName(String name){
this.name=name;
}
由上 成員變量與setName()方法中的形式參數的名稱相同 都為name 在JAVA語言中規(guī)定使用this關鍵字來代表本類對象的引用惰匙,this關鍵字被隱式的用于引用對象的成員變量和方法 this.name
是成員變量 name
是指形參name
實際上 this引用的就是本類的一個對象 在局部變量或方法參數覆蓋了成員變量時 就要添加this關鍵字明確引用的是類成員還是局部變量或者方法參數
this除了可以調用成員變量或者成員方法外 還可以作為方法的返回值
static
由static修飾的變量 常量 方法 稱為 靜態(tài)變量 常量 方法 統(tǒng)稱為靜態(tài)成員
靜態(tài)成員屬于類所有 區(qū)別于個別對象 可以本類或者其他類中使用類名.靜態(tài)成員來調用
雖然靜態(tài)成員也可以使用對象.靜態(tài)成員
的形式進行調用 但是通常不建議這樣使用 因為容易混淆靜態(tài)成員和非靜態(tài)成員
盡管使用靜態(tài)成員比較方便 但是靜態(tài)成員同樣遵循public private protected修飾符的約束
靜態(tài)方法中不可以使用this關鍵字
靜態(tài)方法中不可以直接調用非靜態(tài)方法
不能將方法中的局部變量聲明為靜態(tài)變量
在執(zhí)行類時 可以使用static定義一個靜態(tài)區(qū)域類先執(zhí)行類的初始化動作
對象的銷毀
{
Example e= new Example();
}
對象e超過其作用范圍 將消亡
{
Example e= new Example();
e=null;
}
當對象被置為null值時 將消亡
垃圾回收機制只能回收那些由new操作符創(chuàng)建的對象 如果某些對象不是通過new操作符在內存中獲取一塊內存區(qū)域 這種對象可能不能被垃圾回收機制所識別 所以在JAVA中提供了一個finalize()
方法 這個方法是Object類的方法 它被聲明為protected 用戶可以在自己的類中定義這個方法 定義完成后 在垃圾回收時會首先調用該方法 在下一次垃圾回收動作發(fā)生時 才能真正回收被對象占用的內存