.PHP5 接口技术 PHP 与大多数面向对象编程语言一样,不支持多重继承.也就是说每个类只能继承一个父 类。为了解决这个问题,PHP 引入了接口,接口的思想是指定了一个实现了该接口的类必须 实现的一系列方法。接口是一种特殊的抽象类,抽象类又是一种特殊的类,所以接口也是一 种特殊的类,为什么说接口是一种特殊的抽象类呢?如果一个抽象类里面的所有的方法都是 抽象方法,那么我们就换一种声明方法使用“接口”;也就是说接口里面所有的方法必须都是 声明为抽象方法,另外接口里面不能声明变量,而且接口里面所有的成员都是public 权限的。 所以子类在实现的时候也一定要使用public 权限实限。 声明一个类的时候我们使用的关键字是“class”,而接口一种特殊的类,使用的关键字 是“interface”; 类的定义:class 类名{ … } ,接口的声明:interface 接口名{ … } 代码片段 上例中定义了一个接口“one”,里面声明了两个抽象方法“fun1”和“fun2”,因为接 口里面所有的方法都是抽象方法,所以在声明抽象方法的时候就不用像抽象类那样使用 “abstract”这个关键字了,默认的已经加上这个关键字,另外在接口里边的“public”这个访 问权限也可以去掉,因为默认就是public 的,因为接口里所有成员都要是公有的,所在对于 接口里面的成员我们就不能使用“private”的和“protected”的权限了,都要用public 或是默 认的。另外在接口里面我们也声明了一个常量“constant“, 因为在接口里面不能用变量成 员,所以我们要使用const 这个关键字声明。 因为接口是一种特殊的抽象类,里面所有的方法都是抽象方法,所以接口也不能产生实 例对象;它也做为一种规范,所有抽象方法需要子类去实现。 我们可以使用“extends“关键字让一个接口去继承另一个接口; 代码片段 而我们定义一接口的子类去实现接口中全部抽象方法使用的关键字是“implements”,而 不是我们前面所说的“extends”; 代码片段 我们也可以使用抽象类,去实现接口中的部分抽象方法,但要想实例化对象,这个抽象 类还要有子类把它所有的抽象方法都实现才行; 在前面我们说过,PHP 是单继承的,一个类只能有一父类,但是一个类可以实现多个接 口,就相当于一个类要遵守多个规范,就像我们不仅要遵守国家的法律,如果是在学校的话, 还要遵守学校的校规一样; 代码片段 PHP 中不仅一个类可以实现多个接口,也可以在继承一个类的同时实现多个接口,一定 要先继承类再去实现接口; 代码片段
推荐整理分享php面向对象全攻略 (十四) php5接口技术(php面向对象的三大特征),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:php面向对象详解,php面向对象编程,php面向对象的三大特征,php面向对象优点,缺点,php 面向对象,php面向对象编程,php面向对象的三大特征,php 面向对象,内容如对您有帮助,希望把文章链接给更多的朋友!
php面向对象全攻略 (十五) 多态的应用 多态的应用多态是除封装和继承之外的另一个面向对象的三大特性之一,我个人看来PHP中虽然可以实现多态,但和C++还有Java这些面向对象的语言相比,
php面向对象全攻略 (十六) 对象的串行化 把对象串行化有时候需要把一个对象在网络上传输,为了方便传输,可以把整个对象转化为二进制串,等到达另一端时,再还原为原来的对象,这个过
php面向对象全攻略 (十七) 自动加载类 自动加载类很多开发者写面向对象的应用程序时,对每个类的定义建立一个PHP源文件。一个很大的烦恼是不得不在每个脚本(每个类一个文件)开头写