• wordpress CMS主题:ssmay主题wordpress CMS主题:ssmay主题
  • 首页 > PHP开发 > 怎样理解PHP中的抽象类和抽象方法?

    怎样理解PHP中的抽象类和抽象方法?

    作者: 分类:PHP开发 点击: 315 次
    wordpress CMS主题:ssmay主题

      今天在这里和大家谈谈关于PHP面向对象中抽象类和抽象方法的内容,简单的来说,PHP中抽象类是一种不能被实例化的类,只能作为其他类的父类来使用,抽象方法则不能带方法体,下面我们就来看看具体的示例。

      面向对象的抽象方法和抽象类:

      所有子类必须继承父类的方法,但是继承的时候具有不确定性,必须对父类的方法进行重写,这个时候我们就把这个被重写的方法定义成抽象方法,抽象方法不需要有方法体。这个类也就是抽象abstruct。

      抽象类是一种不能被实例化的类,只能作为其他类的父类来使用!

      如果一个类中,有一个方法是抽象的,则这个类就是抽象类。

      如果一个类是抽象类,则这个类必须使用abstract修饰。

      抽象类是一种特殊的类,接口是一种特殊的抽象类,多态就要使用到抽象类或接口!

      测试代码如下:

      abstract class A{

      public $name = 'zym';

      abstract function show();

      }

      //$a = new A();//会报错

      class B extends A{

      public function show(){

      echo '继承父类的抽象方法并进行重写';

      }

      }

      $b = new B();

      $b->show();

      抽象类和普通类相似,包含成员变量和成员方法,两者的区别在于:抽象类至少要包含一个抽象方法,抽象方法没有方法体,其功能的实现只能在子类中完成。

      代码如下:

      //定义一个名为【交通工具】的类

      abstract class Vehicle{

      private $name;//名称

      private $price;//价格

      private $brand;//品牌

      abstract function run();

      }

      class Truck extends Vehicle{

      function run(){

      echo '卡车在路上跑';

      }

      }

      class Plane extends Vehicle{

      public function run(){

      echo '飞机在天上飞';

      }

      }

      $plane = new Plane;

      $plane->run();

      注意:抽象方法一定不能带方法体!

      相关推荐:

      PHP中抽象类和抽象方法概念与用法分析,php抽象

      详解php中的抽象方法和抽象类

      以上就是如何理解PHP中抽象类和抽象方法?(附代码)的详细内容。



      QQ二维码

    文章作者:honor
    本文地址:http://wanlimm.com/77201807216122.html
    版权所有 © 转载时必须以链接形式注明作者和原始出处!

    上一篇:
    下一篇:
    wordpress CMS主题:ssmay主题

    或许你会感兴趣的文章:

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    This site uses Akismet to reduce spam. Learn how your comment data is processed.