3.1 封裝:就是將屬性私有,并提供公有的setter放置與getter取值方法 public(公有) protected(受保護) private(私有) =========================================================== 在本類中 Y Y Y 在子類中 Y Y N 在類外邊 Y N N
5.1. 繼承:extends 假如B類繼承A類,那么就繼承了A中所有非私有屬性和方法(函數)。 其中A叫父類(基類)?!。陆凶宇悾ㄅ缮悾? class B extends A{ .... } 在php中類只支持【單一繼承】,就是一類只能繼承一個父類。 parent關鍵字:若子類出現覆蓋父類的方法,那么有時還想調用被覆蓋掉了的方法, 我們就是用關鍵字【parent::父類方法】還有使用類名 class A{ public function __construct(){ //.... } } class B extends A{ public function __construct(){ parent::__construct();//注意要調用一下父類的構造方法 //.... } }
當類中有一個方法,他沒有方法體,也就是沒有花括號,直接分號結束。如 public abstract function fun();象這種方法我們叫抽象方法,必須使用關鍵字abstract定義,包含這種方法的類必須是抽象類也要使用關鍵字abstract加以聲明。抽象類的特點:不能實例化,也就new成對象若想使用抽象類,就必須定義一個類去繼承這個抽象類,并定義覆蓋父類的抽象方法(實現抽象方法)。其實抽象類對于子類(實現類),有一個約束的作用,