黑马程序员技术交流社区
标题: 【黑马程序员济南】PHP类的接口技术(interface) [打印本页]
作者: 小鲁哥哥 时间: 2017-9-19 10:59
标题: 【黑马程序员济南】PHP类的接口技术(interface)
本帖最后由 小鲁哥哥 于 2017-9-19 11:03 编辑
PHP类的接口技术(interface)
今天为大家带来的是我们类中的一个极致,接口(interface)
接口技术
什么叫做接口? 看接口的“发展历程”:
类 --> 抽象类 --> 比抽象类更抽象的某种“结构形式”:接口;
接口:跟抽象类比:
接口中只有抽象方法——和常量;
抽象类中可以有抽象方法,也可以有其他各种成员;
示例代码:
abstract class C1{
const p1 = 1;
public $p2 = 2;
static $p3 = 3;
function f1(){ 。。。。 };
static function f2(){ 。。。。 }
abstract function f3();
}
将上述抽象类中的“具体”的成员抽掉,就剩下:
interface C1{
const p1 = 1;
abstract function f3();
}
实际上,接口本身其实跟只有常量和抽象方法的抽象类是一样的形式!
但,之所以换个名字叫做接口,是因为又规定:接口可以实现多继承;
接口的使用:
设计接口的目的,是为了给“类”来继承之,并使用其中的常量和 (抽象)方法。
一个类继承一个(或多个)接口的时候,不叫继承,而是叫做“实现”(implements),
即:某个类,实现了某(几)个接口;
形式:
class 类名 【extends 父类名】 implements 接口名1,接口名2,... {
......类成员的定义;
}
接口的继承:
接口之间,也可以相互继承——此时就是称为继承;
而且,他们还可以进行多继承!
示意代码:
interface I1{.... }
interface I2{.... }
interface I3 extends I1, I2{
const PI = 3.14;
}
接口中的常量使用
形式:跟类一样,用接口名以及“::”操作符去“取用”;
echo I3::PI; //输出3.14
不知道大家对今天讲的类的重载技术之方法重载学习的怎么样啊?有什么疑问欢迎来黑马程序员济南中心来咨询哟~
点进这个帖子的同学肯定是要奋发图强,学技术拿高薪的有志青年,这里我看你骨骼惊奇,是个绝世的练武奇才,你我有缘,今天我就把这个武林秘籍如来神掌传授于你! 什么?不想学如来神掌?不要紧!这里有各个门派的武林绝学,链接拿好!!哈哈哈哈
作者: comebas 时间: 2017-11-2 11:52
一直很喜欢黑马的这个免费资源
作者: 一城之间 时间: 2018-1-26 08:28
不写混编改写接口了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |