ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
## **[php继承类 extends用法详解](https://www.php.cn/php-weizijiaocheng-371591.html)** ``` class MyClass {     protected function myFunc() {         echo "MyClass::myFunc()\\n";     } } class OtherClass extends MyClass {     // 覆盖了父类的定义     public function myFunc()     {         // 但还是可以调用父类中被覆盖的方法         parent::myFunc();         echo "OtherClass::myFunc()\\n";     } } $class = new OtherClass(); $class->myFunc(); \*\*  \* 输出结果 ->  \* MyClass::myFunc() \* OtherClass::myFunc()  \*/ ?> ``` ## [**PHP类的多态与封装**](https://www.cnblogs.com/id88/p/11069027.html) ## 抽象类和抽象方法 抽象类是一种不能被实例化的类,只能作为父类被其他类继承。 与其他类一样抽象类也可以有属性和方法,但不同点在于,抽象类必须至少包含一个抽象方法。 所谓抽象方法,就是没有具体实现的方法,其对应的函数体为空。 抽象方法的细节只能在子类中实现,而且子类必须实现所继承的抽象类中的所有的抽象方法。 抽象类和抽象方法都用关键字`abstract`来定义,格式如下: ~~~ abstract class 抽象类名{ //... abstract [public | protected] function 抽象方法名 ([方法参数]); //定义抽象方法 } ~~~ 其中,抽象方法的访问控制修饰符只能是 public 或 protected 。 如果抽象方法声明为 public ,则子类中实现的方法也应声明为 public ; 如果抽象方法声明为 protected ,则子类中实现的方法既可以声明为 protected,也可以声明为 public。