accessor(訪問器)和mutator(更改器)方法
如果乙個方法改變了呼叫它的物件,我們便稱之為更改器方法,反之,則是訪問器方法。
其中arraylista = new arraylist<>(); a.add(""); add方法為更改器方法,改變了物件a的值
this 引用
在物件上呼叫方法是,this引用指向該物件,當例項變數和區域性變數同名時,非限定名表示區域性變數,而this.value 表示例項變數
實現建構函式
public employee(string name,double salary)
employee fred = new employee("fred",1000);
過載(有多個名稱相同但是引數不同的方法版本,name這個方法就是過載的)
public employee(double salary)
employee peter = new employee(10000);
呼叫另乙個建構函式
public employee(double salary)
需要注意的是這裡的this不是正被構造物件的引用。相反,它是一種特殊語法,只用在同類的另乙個構造函式呼叫中。
final
當使用可修改物件的引用時,final修飾符只是宣告該引用永不改變。修改物件本身是完全合法的
public class person
方法可以修改friends引用的陣列列表,但是他們不能用其他的物件替代。特別是friends不能變為null。
無參建構函式
public employee()
當乙個類已經存在乙個建構函式時,系統便不會在自動給他分配乙個無參的建構函式,此時如果還需要無參的建構函式,則需要自己寫乙個
包的宣告
要將乙個類放到乙個包中,需要將包的宣告作為原始檔的第乙個宣告
類路徑可以將class檔案放到乙個或者多個被稱為jar檔案的歸檔檔案中
jar cvf library.jar com\mycompany\*.class
在專案中需要使用類庫中的jar檔案時,需要指定class path告訴編譯器和虛擬機器這些jar檔案在**。class path可以包含
1. 包含class檔案的目錄
2. jar檔案
3. 包含jar檔案的目錄
import 宣告與c或c++的 #include 指令完全不同,#include指令為編譯器包含了標頭檔案。import不會導致檔案重新編譯。它們只是縮短了名稱
巢狀類
為了限制可見性或者避免因為匯入一些使用了通用名稱的包而產生混亂。
靜態巢狀類
例如public class invoice(
private static class item
}private arraylistitems = new arraylist<>();
)當然也可以 public static class item
內部類區別於靜態巢狀類,內部類方法可以持有,訪問它的外部類的例項變數。
例如public class network
}private arraylistmembers;
}
c primer 物件導向程式設計筆記
1 動態繫結 在c 中,通過基類的引用 或指標 呼叫虛函式時,發生動態繫結。引用 或指標 既可以指向基類物件也可以指向派生類物件。2 虛函式 1 保留字virtual 只在類內部的成員函式宣告中出現,不能用在類定義體外部初相的函式定義上。2 派生類中虛函式的宣告必須與基類中的定義完全匹配,但有乙個例...
學習筆記 物件導向程式設計
學習日期 2016年9月26日 2016年9月27日 學習課程 物件導向程式設計 廖雪峰的官方 物件導向程式設計 object oriented programming,簡稱oop,是一種程式設計思想。oop把物件作為程式的基本單元,乙個物件包含了資料和運算元據的函式。在python中,所有資料型別...
PHP物件導向程式設計 筆記
在慕課網學習了建構函式 construct 在物件例項化後呼叫物件後第一時間觸發析構函式 destroy 在物件例項確認銷毀,且銷毀之前觸發 tostring 當物件被當做string使用時,這個方法會自動呼叫 即物件當做乙個變數使用時,會被觸發 invoke 當物件被當做方法使用時,這個方法會自動...