• php抽象类和抽象方法


      在oop语言中,一个类可以有一个或多个子类,而每个类都有只收一个公有方法作为外部代码访问其接口。而抽象方法就是为了方便继承而引入的。

      当类中由一个方法,它没有方法体,也就是没有花括号直接分号结束,像这种方法我们叫抽象方法必须使用关键字abstract定义。

     eg:public abstract  function fun();

      包含这种方法的类必须是抽象类也要使用关键字abstract加以声明。(即使用关键字abstract修饰的类为抽象类)

      抽象类的特点:

          不能实例化,也就new成对象

          若想使用抽象类,就必须定义一个类去继承这个抽象类,并定义覆盖父类的抽象方法(实现抽象方法)。

      其实抽象类对于子类(实现类),有一个约束的作用,含有抽象方法的类肯定是抽象类,但是~不是所有的抽象类都必须包含抽象方法。

    eg:

    abstract class Human
    {
    public $name="zhangsan";
    //抽象方法
    abstract function speak();
    //非抽象方法 抽象类里也可以有非抽象方法
    function run(){
    echo "我不是抽象类";
    }
    }

    //继承抽象类必须继承抽象类里的所有抽象方法,否则会报错哦!!!!
    class worker extends Human
    {

    function speak(){
    echo "我是子类,我会说话";
    }
    }

    $work = new worker();
    $work->speak();
    echo $work->name;
  • 相关阅读:
    第七章-方法区
    wchar_t 字符拼接
    C++获取appdata路径
    char * 、BSTR、long、wchar_t *、LPCWSTR、string、QString类型转换
    climits 与 符号常量
    Qt数据结构-QString二:QString的arg能不能像Python的format一样使用
    Qt数据结构-QString一:常用方法
    怎么查看摄像头的硬件ID
    jenkins提示使用java11版本
    Jenkins:the input device is not a TTY
  • 原文地址:https://www.cnblogs.com/chencuixin/p/6636184.html
Copyright © 2020-2023  润新知