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 相关文章推荐
转换中文日期的PHP程序
Oct 09 PHP
php加水印的代码(支持半透明透明打水印,支持png透明背景)
Jan 17 PHP
在smarty中调用php内置函数的方法
Feb 07 PHP
使用dump函数,给php加断点测试
Jun 25 PHP
Fedora下安装php Redis扩展笔记
Sep 03 PHP
Yii框架关联查询with用法分析
Dec 02 PHP
PHP实现格式化文件数据大小显示的方法
Jan 03 PHP
php实现按照权重随机排序数据的方法
Jan 09 PHP
PHP session 会话处理函数
Jun 06 PHP
PHP对象链式操作实现原理分析
Oct 09 PHP
详解PHP处理密码的几种方式
Nov 30 PHP
PHP实现根据数组的值进行分组的方法
Apr 20 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
php4的session功能评述(三)
2006/10/09 PHP
用PHP实现Ftp用户的在线管理的代码
2007/03/06 PHP
PHP 转义使用详解
2013/07/15 PHP
php实现的网络相册图片防盗链完美破解方法
2015/07/01 PHP
JS 动态加载脚本的4种方法
2009/05/05 Javascript
解析Javascript小括号“()”的多义性
2013/12/03 Javascript
100个不能错过的实用JS自定义函数
2014/03/05 Javascript
Js操作树节点自动折叠展开的几种方法
2014/05/05 Javascript
Blocksit插件实现瀑布流数据无限( 异步)加载
2014/06/20 Javascript
Nodejs实现多人同时在线移动鼠标的小游戏分享
2014/12/06 NodeJs
JavaScript获取并更改input标签name属性的方法
2015/07/02 Javascript
BooStrap对导航条的改造实践小结
2016/09/21 Javascript
js控制一个按钮是否可点击(可使用)disabled的实例
2017/02/14 Javascript
Bootstrap笔记之缩略图、警告框实例详解
2017/03/09 Javascript
实现图片首尾平滑轮播(JS原生方法—节流)
2017/10/17 Javascript
javaScript实现鼠标在文字上悬浮时弹出悬浮层效果
2020/04/12 Javascript
详解React 的几种条件渲染以及选择
2018/10/23 Javascript
javascript实现对话框功能警告(alert 消息对话框)确认(confirm 消息对话框)
2019/05/07 Javascript
解决vue初始化项目时,一直卡在Project description上的问题
2019/10/31 Javascript
对python中两种列表元素去重函数性能的比较方法
2018/06/29 Python
Python 日志logging模块用法简单示例
2019/10/18 Python
python flask搭建web应用教程
2019/11/19 Python
500行python代码实现飞机大战
2020/04/24 Python
python实现在列表中查找某个元素的下标示例
2020/11/16 Python
Python paramiko使用方法代码汇总
2020/11/20 Python
FOREO官方网站:LUNA露娜洁面仪
2016/11/28 全球购物
英国评分最高的女性剃须刀订阅盒:FFS Beauty
2018/01/25 全球购物
亚洲最大的运动鞋寄售店:KicksCrew
2020/11/26 全球购物
临床医学专业毕业生的自我评价
2013/10/17 职场文书
技术副厂长岗位职责
2013/12/26 职场文书
自荐信的格式
2014/03/10 职场文书
2014年冬季防火方案
2014/05/21 职场文书
公务员年度个人总结
2015/02/12 职场文书
安全生产先进个人总结
2015/02/15 职场文书
2015年银行大堂经理工作总结
2015/04/24 职场文书
Python万能模板案例之matplotlib绘制直方图的基本配置
2022/04/13 Python