• 技术文章 >后端开发 >php教程

    特立独行的世外高人-php中的interface

    逆旅行人逆旅行人2021-03-12 14:31:12原创861
    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中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:interface,php
    上一篇:查询数据的必备良方-php中的setFetchMode () 下一篇:PHP中foreach遍历的不仅仅是数组
    大前端线上培训班

    相关文章推荐

    • php中static、final、interface、abstract的区别• interface和abstract class的区别• php中的interface是什么意思• SQL Interface是什么• 谈谈PHP中interface的用处

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网