美文网首页
PHP抽象类

PHP抽象类

作者: 雨声不吃鱼 | 来源:发表于2016-09-18 15:06 被阅读0次

    PHP抽象类应用的定义:abstract class ClassName { }

    PHP抽象类应用要点:

      1.定义一些方法,子类必须完全实现这个抽象中所有的方法

      2.不能从抽象类创建对象,它的意义在于被扩展

      3.抽象类通常具有抽象方法,方法中没有大括号

    PHP抽象类应用重点:

      1.抽象方法不必实现具体的功能,由子类来完成

      2.在子类实现抽象类的方法时,其子类的可见性必须大于或等于抽象方法的定义

      3.抽象类的方法可以有参数,也可以为空

      4.如果抽象方法有参数,那么子类的实现也必须有相同的参数个数

    PHP抽象类应用示例:

      abstract public function_name(); //注意没有大括号

    PHP抽象类规则:

      1.某个类只要至少含有一个抽象方法,就必须声明为抽象类

      2.抽象方法,不能够含有函数体

      3.继承抽象类的子类,实现抽象方法的,必须跟该抽象方法具有相同或者更低的      访问级别

      4.继承抽象类的子类,如果不实现所有抽象方法,那么该子类也为抽象类


    虽然上面说了这么多,然而我也不懂,都是复制的...

    下面:(形状类  --> 扩展  -->计算矩形面积)

    abstract class Shape

    {

    abstract protected function get_area();

    //和一般的方法不同的是,这个方法没有大括号

    //你不能创建这个抽象类的实例:$Shape_Rect= new Shape();

    }

    class Rectangle extends Shape

    {

    private $width;

    private $height;

    function __construct($width=0,$height=0)

    {

    $this->width=$width;

    $this->height=$height;

    }

    function get_area()

    {

    echo ($this->width+$this->height)*2;

    }

    }

    $Shape_Rect = new Rectangle(20,30);

    $Shape_Rect->get_area();


    作为一个渣渣,下面是我自己的一些渣渣见解,我的小目标就是:误导你们!

    --->

    抽象类中有抽象方法,抽象类不能实例化,抽象方法也不能有方法体。

    子类继承自这个定义的抽象类,然后必须实现它的抽象方法。

    抽象方法中可以有参数,但是如果有的话,子类实现这个抽象方法的话,必须和抽象类中的参数个数相同。

    如果一个类中有抽象方法,就必须声明为抽象类。


    拓展

    1、

    __construct() 函数创建一个新的 SimpleXMLElement 对象。

    如果成功,则该函数返回一个对象。如果失败,则返回 false。

    2、

    构造方法的作用

    通常构造方法被用来执行一些有用的初始化任务,如对成员属性在创建对象时赋予初始值。

    构造方法的在类中的声明格式

    function __constrct([参数列表])

    {

    //通常用来对成员属性进行初始化赋值

    }

    在类中声明构造方法需要注意的事项

    1、在同一个类中只能声明一个构造方法,原因是,PHP不支持构造函数重载。

    2、构造方法名称是以两个下画线开始的__construct()

    相关文章

      网友评论

          本文标题:PHP抽象类

          本文链接:https://www.haomeiwen.com/subject/abxgettx.html