php接口技术实例详解


Posted in PHP onDecember 07, 2016

本文实例讲述了php接口技术。分享给大家供大家参考,具体如下:

1.接口是一种特殊的抽象类,为什么这么说呢?如果一个抽象类中所有的方法都是抽象方法,那么我们就换一种称呼,称为“接口”。

2.另外接口中不能声明变量。

3.接口中所有的成员都是public权限的。所有的子类在实现时,也一定要使用public权限去实现。

4.声明一个类的时候,我们用关键字“class”,而声明接口的时候,我们用关键字“interface”。

<?php
//定义一个接口使用interface关键字,“One”为接口名称
interface One{
  //定义一个常量
  const constant = 'constant value';
  //定义一个抽象方法fun1
  public function fun1();
  //定义了抽象方法fun2
  public function fun2();
}
?>

5.因为接口里所有的方法都是抽象方法,所以在声明抽象方法就不用像抽象类那样使用“abstract”这个关键字了,默认已经加上这个关键字了。

6.接口里面的访问权限必须为public,默认就是public,不能使用“private”和“protected”权限。

7.接口是一种特殊的抽象类,里面所有方法都是抽象方法,所以接口也不能产生实例对象。

8.我们可以用“extends”关键字让一个接口去继承另一个接口。

interface Two extends One{
  function fun3();
  function fun4();
}

9.我们定义一个接口的子类去实现接口中全部抽象方法使用的关键字是“implements”,而不是我们前面所说的“extends”。

class Three implements Two{
  function fun1() {
    ;
  }
  function fun2() {
    ;
  }
  function fun3(){
    ;
  }
  function fun4() {
    ;
  }
}
$three = new Three();
$three->fun1();

10.PHP是单继承的,一个类只能有一个父类,但一个类可以实现多个接口,就相当于一个类要遵守多个规范。使用implements实现多个接口,必须把所有接口中的方法都要实现才可以实例化对象。

11.PHP不仅可以实现多个接口,也可以在继承一个类的同时实现多个接口,一定要先继承类再去实现接口。

<?php
//使用extends继承一个类,使用implements实现多个接口
class Test extends 类名一 implements 接口一,接口二,...{
//所有接口中的方法都要实现才可以实例化对象
  ......
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
Discuz 模板引擎的封装类代码
Jul 18 PHP
PHP中Session引起的脚本阻塞问题解决办法
Apr 08 PHP
php实现文件下载功能的几个代码分享
May 10 PHP
Destoon模板制作简明教程
Jun 20 PHP
php 模拟 asp.net webFrom 按钮提交事件实例
Oct 13 PHP
php生成html文件方法总结
Dec 01 PHP
php实现求相对时间函数
Jun 15 PHP
解读PHP中的垃圾回收机制
Aug 10 PHP
浅析Yii2 gridview实现批量删除教程
Apr 22 PHP
Apache PHP MySql安装配置图文教程
Aug 27 PHP
PHP+MySQL高并发加锁事务处理问题解决方法
Apr 30 PHP
laravel框架语言包拓展实现方法分析
Nov 22 PHP
php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】
Dec 07 #PHP
php常用字符串String函数实例总结【转换,替换,计算,截取,加密】
Dec 07 #PHP
php自定义时间转换函数示例
Dec 07 #PHP
php微信公众平台开发(四)回复功能开发
Dec 06 #PHP
php微信公众平台开发(三)订阅事件处理
Dec 06 #PHP
php微信公众平台示例代码分析(二)
Dec 06 #PHP
php微信公众平台开发(一) 配置接口
Dec 06 #PHP
You might like
php中模拟POST传递数据的两种方法分享
2011/09/16 PHP
php使用正则表达式进行字符串搜索的方法
2015/03/23 PHP
Json_encode防止汉字转义成unicode的方法
2016/02/25 PHP
ThinkPHP实现附件上传功能
2017/04/27 PHP
PHP中命名空间的使用例子
2019/03/22 PHP
TFDN图片播放器 不错自动播放
2006/10/03 Javascript
javascript同步Import,同步调用外部js的方法
2008/07/08 Javascript
两种WEB下的模态对话框 (asp.net或js的分别实现)
2009/12/02 Javascript
jquery isEmptyObject判断是否为空对象的函数
2011/02/14 Javascript
jquery插件bxslider用法实例分析
2015/04/16 Javascript
jquery插件Jplayer使用方法简析
2016/04/22 Javascript
js接收并转化Java中的数组对象的方法
2016/08/11 Javascript
jQuery 全选 全部选 反选 实现代码
2016/08/17 Javascript
浅谈时钟的生成(js手写简洁代码)
2016/08/20 Javascript
利用浮层使select不可选的实现方法
2016/12/03 Javascript
一篇文章搞定JavaScript类型转换(面试常见)
2017/01/21 Javascript
Vue.js使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
2017/05/10 Javascript
vue插件draggable实现拖拽移动图片顺序
2018/12/01 Javascript
原生JS实现图片懒加载之页面性能优化
2019/04/26 Javascript
[34:41]夜魇凡尔赛茶话会 第二期02:你画我猜
2021/03/11 DOTA
Python出现segfault错误解决方法
2016/04/16 Python
详解python的sorted函数对字典按key排序和按value排序
2018/08/10 Python
python ChainMap 合并字典的实现步骤
2019/06/11 Python
python实现本地批量ping多个IP的方法示例
2019/08/07 Python
python3.7环境下安装Anaconda的教程图解
2019/09/10 Python
Python实现socket非阻塞通讯功能示例
2019/11/06 Python
Python list运算操作代码实例解析
2020/01/20 Python
Python爬虫之Selenium多窗口切换的实现
2020/12/04 Python
python中的时区问题
2021/01/14 Python
聚美优品广告词改编
2014/03/14 职场文书
《大自然的语言》教学反思
2014/04/08 职场文书
规范化管理年活动总结
2014/08/29 职场文书
汽车转让协议书
2015/01/29 职场文书
辩论赛开场白大全(主持人+辩手)
2015/05/29 职场文书
会计实训总结范文
2015/08/03 职场文书
班委竞选稿范文
2015/11/21 职场文书