PHP物件導向基礎
1、__constract()建構函式知識點
a、例項化物件的時候,如果子類沒有建構函式,就呼叫父類的建構函式。如果子類有建構函式,這首先呼叫自己。
b、呼叫父類的建構函式 parent::__constract();
2、PHP不支援多重繼承,因為多重繼承容易產生二義性。但如果讓c->b->a,就可以實現多重繼承的功能。
3、多型:即多種形態。可以分為方法的重寫和方法的過載,但PHP不支援方法的過載,只支援方法的重寫。
a、子類必須要父類具有相同的方法名;
b、子類中重寫的方法可以和父類的方法引數個數不一致(不遵循嚴格標準);
c、子類中覆蓋的方法不能比父類被覆蓋的方法許可權更加嚴格;
d、私有屬性可以被繼承,但不能被重寫。
4、方法修飾符(一)static(靜態的)
a、static修飾的屬性為靜態屬性,static修飾的方法為靜態方法;
b、靜態屬性在載入類的時候就分層記憶體空間,不需要例項化就可以直接訪問靜態成員;
c、靜態屬性在記憶體中只有一份,為所有的例項共享;
d、靜態方法只能訪問靜態成員,因為靜態方法建立的時候,可能還沒有類的例項化;
e、訪問靜態成員語法,類名::靜態屬性,類名::靜態方法;
f、靜態成員被繼承
5、方法修飾符(二)-final(最終的)
a、final 修飾的類不能被繼承;
b、final修飾的方法不能被重寫(覆蓋)
6、方法修飾符(三)-abstract(抽象的)
a、abstract修飾的類為抽象類,abstract修飾的方法稱為抽象方法;
b、如果一個方法只有方法的宣告,沒有方法的實現,這個方法就稱為抽象方法;
c、如果一個類中有一個方法是抽象方法,這個類就是抽象類;
d、抽象類不允許例項化,必須在子類中重新實現;
e、抽象類的作用:抽象類是用來定義規範的,可以使得方法的命名得到統一;
f、抽象類的特點是不能被例項化,如果一個普通類不想被例項化,可以在類的前面用abstract來修飾,阻止例項化。
7、介面(interface)
a、如果一個抽象類中所有的方法就是抽象方法,這個類可以宣告成介面;
b、介面是一個特殊的抽象類;
c、介面中的訪問修飾符可以省略 ,預設是public;
d、類不能繼承介面,只能實現介面(implement);
e、abstract,final不能修飾介面中的抽象方法;
f、類不能多重繼承,但是介面可以實現多重繼承;
g、在介面的多重實現中,如果有多個同名的抽象方法,只需要實現一次即可。
h、繼承類同時實現介面,先要繼承類,再實現介面。
8、類常量
1、語法:const 常量名
2、訪問常量: 類名::常量名 介面名::常量名;
相關文章
- PHP 物件導向基礎概念PHP物件
- PHP基礎之物件導向篇PHP物件
- php基礎語法_物件導向PHP物件
- PHP基礎之物件導向講解PHP物件
- 物件導向基礎物件
- JAVA(一)JAVA基礎/物件導向基礎/高階物件導向Java物件
- JAVA物件導向基礎--物件導向介紹Java物件
- Java基礎-物件導向基礎Java物件
- JAVA物件導向基礎Java物件
- 【Java 基礎】——物件導向Java物件
- Java基礎 --- 物件導向Java物件
- java基礎二:物件導向Java物件
- python物件導向[基礎]Python物件
- 12 物件導向基礎-1物件
- Golang 基礎之物件導向Golang物件
- PHP物件導向PHP物件
- 「MoreThanJava」Day 4:物件導向基礎Java物件
- 【Java基礎】物件導向開發Java物件
- 面向Python,物件導向(基礎)Python物件
- (Java筆記)物件導向基礎Java筆記物件
- Python基礎之物件導向Python物件
- 【Java基礎】--再談物件導向Java物件
- JAVA物件導向基礎--異常Java物件
- PHP 物件導向 (九)物件導向三大特徵PHP物件特徵
- PHP物件導向(三)PHP物件
- 物件導向(理解物件)——JavaScript基礎總結(一)物件JavaScript
- 面向Python,物件導向(基礎3)Python物件
- 面向Python,物件導向(基礎2)Python物件
- Java 基礎(一)重新理解物件導向Java物件
- java基礎 - 物件導向三大特性Java物件
- 《Python 基礎篇》六:物件導向Python物件
- Java基礎 --- 物件導向綜合訓練Java物件
- php中的程式導向與物件導向PHP物件
- [.net 物件導向程式設計基礎] (13) 物件導向三大特性——多型物件程式設計多型
- [.net 物件導向程式設計基礎] (12) 物件導向三大特性——繼承物件程式設計繼承
- [.net 物件導向程式設計基礎] (11) 物件導向三大特性——封裝物件程式設計封裝
- [.net 物件導向程式設計基礎] (2) 關於物件導向程式設計物件程式設計
- Python物件導向基礎:設定物件屬性Python物件