首页 > 编程 > PHP > 正文

Php面向对象接口

2020-03-22 19:33:49
字体:
来源:转载
供稿:网友
  • Phphtml' target='_blank'>面向对象 – 接口

    接口:interface

    php中,我们可以规定,一个对象应该具有哪些公共的外部操作,使用interface来规定。

    公共的方法就是接口。

    用于规定一个对象应该用于哪些公共的操作方法(接口),这个也叫接口(公共操作方法的集合)

    接口(interface结构,公共方法集合)

    公共方法(接口方法)

    定义:

    用于限定某个对象所必须拥有的公共操作方法的一种结构,称之为接口(interface)

    语法:

    定义接口结构,使用interface关键字。接口内定义的都是一些公共方法。

    interface 接口名

    {

    公共操作方法列表

    }

    例子:

    interface I_Goods

    {

    public function sayName();

    public function sayPrice();

    }

    注意:

    1. 接口方法,访问权限必须是公共的 public

    2. 接口内只能有公共方法,不能存在成员变量

    3. 接口内只能含有未被实现的方法,也叫抽象方法,但是不用abstract关键字。

    类实现接口,利用关键字implements完成。

    例子:

    interface I_Goods

    {

    public function sayName();

    public function sayPrice();

    }

    class Goods implements I_Goods

    {

    public function sayName()

    {

    }

    public function sayPrice()

    {

    }

    }

    这样,实现该接口的类,必须实现接口内所有的抽象方法。而且可以肯定,该方法一定是公共的外部操作方法。

    多实现

    上面的功能,理论上可以通过抽象类来实现,但是抽象类,不专业。

    接口专业在,实现上,因为php支持多实现,而仅支持单继承。

    例子:

    interface I_Goods

    {

    public function sayName();

    public function sayPrice();

    }

    interface I_Shop

    {

    public function saySafe();

    }

    class Goods implements I_Goods , I_Shop

    {

    public function sayName()

    {

    }

    public function sayPrice()

    {

    }

    public function saySafe()

    {

    }

    }

    接口之间也可以继承

    例子:

    interface I_Goods

    {

    public function sayName();

    public function sayPrice();

    }

    interface I_Shop extends I_Goods

    {

    public function saySafe();

    }

    class Goods implements I_Shop

    {

    public function sayName()

    {

    }

    public function sayPrice()

    {

    }

    public function saySafe()

    {

    }

    }

    php对象接口的支持,可以定义类常量

    例子:

    interface I_Goods

    {

    const PAI = 3.14;

    public function sayName();

    public function sayPrice();

    }

    interface I_Shop extends I_Goods

    {

    public function saySafe();

    }

    class Goods implements I_Shop

    {

    public function sayName()

    {

    }

    public function sayPrice()

    {

    }

    public function saySafe()

    {

    }

    }

    echo Goods::PAI;

    输出:3.14

    PHP编程

    郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

  • 发表评论 共有条评论
    用户名: 密码:
    验证码: 匿名发表