三大特性:封裝、繼承、多型
封裝封裝屬性:
1,私有化成員變數
2,提供get,set方法
3,在方法的內容加入控制語句
static靜態
修飾:成員屬性、方法、**塊
static成員屬性
靜態變數,全域性變數
static成員**塊
用於初始化靜態變數
static成員方法
靜態方法
同一類中,在靜態方法中只能呼叫成員變數、方法
static成員**塊
用於初始化靜態變數
方法過載
為什麼要過載?同乙個物件,做同一件事,條件不同,結果也不同
在同一類中,方法名相同,獨一無二的引數列表(數量、型別、順序、意義),與訪問修飾符和返回值型別無關,方法體不同
繼承1具有單根性,乙個類只能有乙個父類,
2乙個類可以被多個類繼承
3可以有多層繼承,a被b繼承,b被c繼承
4子類繼承父類所有的成員變數和成員方法。除(private)
5子類可以繼承父類的方法,並且可以重寫父類的方法。
6父類建構函式不能被繼承。可以使用super呼叫父類的建構函式。
7.如果子類的構造方法中沒有顯式地呼叫父類構造方法,也沒有用this 關鍵字,則在產生子類的例項物件時,系統預設呼叫父類無引數的構造方法。
super、this
在子類中,this代表當前子類物件,super代表父類物件
抽象類 非完全抽象
abstract
不具體的類,不能例項化
作用:讓子類繼承
抽象方法
不具體的方法,沒有方法體
讓子類來實現方法體
final 最終的
修飾:變數、方法、類
final 變數:常量,只能賦值一次
final int i=6; 值不能變
final son son=new son();
son 不能指向別的物件 但son.name="asd";物件的屬性值可變
final 方法:不能被重寫的
final 類:不能被繼承的
重寫位置:父子類中
方法名、引數列表、返回值型別相同
訪問修飾符不能比父類更嚴格
方法體不同
位置訪問修飾符
返回值型別
方法名引數列表
方法體方法過載
同一類中
無關無關
相同獨一無二
不同方法重寫
父子類中
必能比父類更嚴格
相同相同
相同不同
值型別 8個基本型別
儲存是值本身
int i=8;
引用型別 class定義引用
儲存是的物件在堆中的位址
使用父類型別指向子類物件
引用內容為子類繼承父類的屬性和方法
無法引用到子類獨有屬性和方法
將父類引用轉換成子類引用
子類型別 物件名 =(子類型別)父類引用物件名
son s =(son) father;
多型國標 生產標準
指導生產
介面 抽象的
設計、規範、約定、擴充套件
物件導向特性 繼承
1 子類繼承父類的方法和字段 class computer 子類,膝上型電腦類 class notecomputer extends computer 2 不需要父類的字段和方法,那麼可以採用重寫的方法覆蓋掉父類的方法。class computer 子類,膝上型電腦類 class notecompu...
物件導向特性 多型
1 抽象類和方法 只在父類中宣告,在子類中實現,用abstract宣告。作用是給子類作規範。規則 抽象類不能例項化,只能被繼承 抽象方法必須被子類方法重寫。建立 abstract class computer 抽象類裡面的抽象方法必須在子類裡面重寫,不然會報錯。abstract class comp...
PHP物件導向特性
1.類的屬性 成員變數 屬性宣告是由關鍵字 public,protected 或者 private 開頭,然後跟乙個普通的變數宣告來組成。其中public在物件中可以直接訪問,其他不可以。屬性宣告 該類子類 public protected private 2.static靜態屬性 宣告類屬性或方法...