PHP
中的类是不允许多继承
的,而接口
可以多继承
,其次使用接口可以封装
具体的实现,不向外部暴露具体的实现细节,只将接口
暴露出来,用户也只能够通过接口
访问,这样也有一定的安全性。 1.定义:接口,使用interface
关键字定义,与类类似,专门用来规范一些共性类必须实现的方法。
interface People{}
2.接口实现:接口是用来规范类必须完成的事情,所以接口只能被类实现:implements
。(不允许实例化)
class Man implements People{}
3 .接口成员:接口中只能定义公有抽象方法
和接口常量
interface Animal{ const name = '人';//只允许有接口常量 public function eat();//接口方法必须为公有抽象方法}
4.接口的实现类必须实现所有的抽象方法
,或者实现类为抽象类
,接口常量
可以直接在实现类中访问
interface Animal{ const name = '人'; public function eat(); }//实现接口class Man implements Animal{ //必须实现接口所有抽象方法 public function eat(){ echo self::name; //可以访问接口常量 }}//抽象类实现接口abstract class Ladyboy implements Animal{} //正常实现
5.实现接口的类成员
,不允许重写接口中的常量,不允许增加接口方法的控制权限
interface Animal{ const name = '人'; public function eat(); }class Woman implements Animal{ //重写接口常量 const name = '女人'; //错误:不允许重写接口常量 //强化接口方法控制 private function eat(){} //错误:接口方法不允许使用其他访问修饰限定符,必须使用public}
6.接口可以继承接口:extends
,而且接口可以多继承接口
interface Plant{ public function lightning();}interface Animal{ public function eat();}//单继承interface Man extends Animal{}//多继承interface Apple extends Plant,Animal{}
推荐:php视频教程 总结
以上是内存溢出为你收集整理的特立独行的世外高人-php中的interface全部内容,希望文章能够帮你解决特立独行的世外高人-php中的interface所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)