• 抽象 接口等


    继承
    子类可以继承父类的一切
    特点:单继承
    函数的重写

    多态
    当父类引用指向子类实例,由于子类对父类的方法进行了重写,父类引用在调用该方法的时候表现出的不同
    如果一个方法需要一个父类的参数,可以给一个子类对象

    静态
    普通成员
    普通成员是属于对象的

    静态成员
    静态成员属于类的

    关键字:static
    self关键字:在类里面代表该类
    在静态方法里面不能调用普通成员
    在普通方法里面能够调用静态成员

    class FenBi
    {
    public $length; 粉笔的长度
    public static $color; 粉笔的颜色

    static function show()
    {
    echo "粉笔颜色是:".self::$color;
    }

    function XianShi()
    {
    echo "显示:".self::$color;
    }
    }

    $f = new FenBi(); 先造一个对象
    $f->length; 用对象去调用普通成员

    FenBi::$color = "红色"; 使用类名调用静态成员
    FenBi::show();
    $f->XianShi();

    抽象
    抽象类:关键字abstract
    特点:不能被实例化,只能被继承
    目的:为了派生子类,控制子类

    abstract class Dog
    {
    public $name;

    function Jiao()
    {
    echo "汪汪";
    }
    }

    class JinMao extends Dog
    {

    }

    $d = new Dog();

    接口
    极度抽象的类
    接口里面不能包含成员变量,只能包含成员方法
    成员方法可以没有函数体
    接口关键字:interface
    实现接口的类,必须实现接口里面的所有方法

    interface IUSB
    {
    function read(); 读的方法
    function write(); 写的方法
    }

    鼠标的驱动类
    class Mouse implements IUSB
    {
    function read()
    {
    echo "鼠标点击了";
    }
    function write()
    {
    echo "给鼠标一个指令";
    }
    }

    键盘的驱动类
    class JianPan implements IUSB
    {
    function read()
    {
    echo "键盘输入了内容";
    }
    function write()
    {
    echo "给键盘指令";
    }
    }

    $m = new Mouse();
    $m->write();

    $j = new JianPan();
    $j->read();

    接口:API

  • 相关阅读:
    计算机组成原理
    数据结构和算法: 字符串匹配(一) BF/RK
    数据结构和算法: 动态规划-台阶问题
    数据结构和算法: 散列表
    数据结构和算法: 归并排序/快速排序
    数据结构与算法: 冒泡/插入/选择排序
    过渡内容
    Redis 和缓存技术
    2019字节跳动面试时手撕代码题
    Mysql锁机制
  • 原文地址:https://www.cnblogs.com/sq45711478/p/6001594.html
Copyright © 2020-2023  润新知