开发者学堂课程【PHP 进阶教程-由浅入深掌握面向对象开发-第二阶段:接口】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/712/detail/12707
接口
目录
一、接口概念
二、示例
三、小结
一、接口概念
interface 与类类似(注意是类似,接口不是类),专门用来规范一些共性类必须实现的方法。
1.接口不是类,但是与类有类似的结构。
2.接口不能够被实例化(跟前面所讲的抽象类有点相似),但是类可以实现接口,注意这个词叫实现,不是继承。
简单语法:
Interface 接口名字{接口内容}
class 类名 implements 接口名字{}
3.接口是用来规范项目体系,提供一些必须的行为规范,从上往下来规范行为。
二、示例
1、接口定义:使用 interface 关键字,后跟接口名字(与类结构一样)
interface Human{} //{} 中是接口成员中要定义的内容
# 接口 interface
# 定义接口
interface Human{}
得到一个接口 www.myweb.com/12interface.php
没有语法错误,说明这个结构它是可以接受的。
2、接口不是类,不可以被实例化
new Human();
# 致命错误,接口不能被实例化
cannot instantiate 不能被实例化
3、接口实现:接口是用来规范类必须完成的事情,所以接口只能被类实现: implements(关键字)
class Man implements Human{}
#实现接口
class Man implements Human{}
#实例化
$m = new Man();
//类可以被实例化,因为它是一个实体类不是一个抽象类
三、小结
1、接口是一个与类相似的结构,目的是为了规范一些类的必要的行为;
2、接口不是类,类只能实现接口;
3、接口会使得项目的开发变得不那么灵活,因为要做的东西太多了,所以选择性使用接口;
(1)小型项目:接口的增加会导致 PHP 的灵活性和快捷性受阻( PHP 就是以灵活和敏捷开发著称),因此很少使用接口。如果要做的很完善,要完全符合面向对象的思维体系去建立一个很大的架构,接口就会让我们的项目变得臃肿。
(2)大型项目:接口的增加会很好的规范团队的协作,比较多用接口,从上往下,规范了下面必须要做的事情,这样我们的项目的结构性就会很完整,所以这种时候使用比较多。