1.abstract修飾的類為抽象類,如果一個類中含有抽象方法那么這個類就是抽象類(當然一個類中沒有抽象方法,我們也可以定義這個類為抽象類),那么什么是抽象方法呢,抽象方法就是沒有方法體的方法(沒有大括號和里面的內容),抽象方法前面也加上abstract修飾。抽象類本身不能被實例化,只有一個類繼承了它,并覆蓋了它所有的抽象方法,這樣我們可以實例化它的子類
abstract html' target='_blank'>class My{ abstract function say();abstract class My{ function say(){ echo hello }
2.interface修飾的類為接口,接口與抽象類有點類似,不過他們的區別是,接口所有的方法都是抽象方法,接口的抽象方法前面沒有abstract修飾,成員屬性必須為常量。接口引用區別于類繼承關鍵字 extends ,繼承只能只是單一性,而接口可以使用關鍵字 implements 多個引用并用逗號分開。
interface demo { const NAME = 常量對象屬性 function fun1(); function fun2(); //抽象方法。 class MyPc extends Root implements demo , demo2 , demo3 { }
3.final修飾的類為終結類,它不能被繼承。
訪問修飾符1.public 公共的方法和屬性,能在所有的類中使用
2.static 靜態的方法和變量
如果訪問控制權限允許,可不必創建該類對象而直接使用類名加兩個冒號“::”調用,static的屬性,在內存中只有一份,為所有的實例共用, 靜態方法不能調用非靜態屬性 。不能使用self::調用非靜態屬性。
function test(){static $a=1;$a*=2;echo $a. /n test()test()test()//打印結果//8
靜態變量的初始化賦值只有一次,后面的test方法不會再初始化。
3.private 修飾的方法和變量是私有的,只能在本類中調用(在其他的類中實例化本類,是無法調用private修飾的方法和變量)
4.proteced 受保護的方法和變量,只能在本類和本類的子類中使用
5.final 修飾的方法不能被覆蓋。
以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP !
相關推薦:
PHP快速生成現代化form表單的方法
php實現共享內存進程通信函數(_shm)
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答