1.接口类

接口中只允许声明二类成员:类常量、公共抽象方法,接口中不能写属性,方法必须是public,可以写常量
使用接口必须创建一个实现类,在实现类中必须将接口中声明的抽象方法全部实现
一个类可以实现多个接口,中间用逗号隔开,实现了PHP的单继承限制

  1. <?php
  2. // 定义一个接口
  3. // 声明
  4. interface Demo
  5. {
  6. // 接口常量
  7. const APP_TITLE = '小程序';
  8. // 公共抽象方法,没有实现过程
  9. public static function a1(...$args):string;
  10. // 构造方法
  11. public function __constract(...$args);
  12. }
  13. // 实现类
  14. class Demo1 implements Demo
  15. {
  16. // 将接口中的抽象方法实现
  17. public static function a1(...$args):string
  18. {
  19. return print_r($args,true);
  20. }
  21. // 构造方法
  22. public function __constract(...$args)
  23. {
  24. return new static;
  25. }
  26. }
  27. $obj = new Demo1();
  28. echo Demo1::APP_TITLE,'<br>';
  29. ?>

2.抽象类

抽象类不能实例化对象、抽象类的存在就是为了让子类继承
抽象类里的抽象方法必须由子类实现,且抽象类必须通过它的子类才可以使用

  1. <?php
  2. // 抽象类
  3. abstract class Model
  4. {
  5. public function find()
  6. {
  7. }
  8. public function init()
  9. {
  10. }
  11. // 抽象方法
  12. abstract public function __construct();
  13. abstract public function show();
  14. }
  15. // 抽象类必须通过它的子类才可以使用
  16. class MobileModel extends Model
  17. {
  18. // 子类必须将抽象类的抽象方法实现了
  19. public function __construct()
  20. {
  21. }
  22. public function show()
  23. {
  24. return 'Hello,World!';
  25. }
  26. }
  27. $mb = new MobileModel();
  28. echo $mb->show();
  29. ?>

更多相关文章

  1. 快乐学习Pandas入门篇:Pandas基础
  2. 【网工必备】华为设备网络基础配置命令总结,收藏党福利(上)
  3. 36 张图梳理 Intellij IDEA 常用设置
  4. PHP的接口(interface)和抽象类(abstract)
  5. PHP接口和抽象类|接口与抽象类的区别与联系
  6. PHP的接口和抽象类
  7. php学习笔记(类声明,类的实例化,类的静态成员与类的扩展)
  8. 安装Win7系统之后键盘鼠标不能用/失灵没反应的原因以及解决方法
  9. 定义一个接口和抽象类

随机推荐

  1. JAVA中JSP应用导出Excel报表的简单实现以
  2. 我似乎无法正确对齐这些图像
  3. 请问各位大牛,如何在html网页中插入统一的
  4. {{content}}液体标签未显示博客帖子
  5. CSS:浮动时忽略div高度
  6. asp.net core,返回一个view,并没有正确的
  7. Web项目中使用RDLC报表可以打印吗?
  8. Bootstrap 4:导航内部的多级下拉
  9. JQuery TextArea的取值与赋值问题
  10. HTML5_旋转轮播-电子相册-新startMove函