php面向对象之抽象类和接口

PHP面向对象-抽象类和接口

缙云网站建设公司成都创新互联,缙云网站设计制作,有大型网站制作公司丰富经验。已为缙云千余家提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的缙云做网站的公司定做!

抽象类:

         一种特殊的类

         类中有一个是抽象方法就是抽象类

         关键字:abstract

         抽象类中可以有不是抽象方法或抽象属性,但访问权限不是是私有的

         抽象类的作用:

                   使用抽象类就包含了继承关系

                   为子类定义了公共接口

                   为子类提供了规范和约束

         abstract   class aa{}

抽象方法:

         没有方法体(声明时没有花括号和内容),直接分好结束;

                  

         Abstract关键字修饰

                   abstract   function aa();

 

 

注意:

        抽象类不能被实例化,只能被继承

 

abstract class aa{             //定义抽象类  只能被继承不能被实例化

         abstract function aa();    //抽象方法抽象类中的成员方法使用时必须被重载

         abstract function bb();

}

class bb extends aa{            //继承抽象类

         function aa(){          //实现方法 

                   echo ‘aaaaaaaaaaaaaaaaaaa’;

}

         function bb(){}

}

         $a=new bb;

                   $a->aa();

接口:

        特殊的抽象类,抽象类的方法都是抽象的

         必须为公共的public

         常量

         抽象方法不需要前面加abstract关键字修饰,接口中的方法都是抽象方法

         关键字:interface

         class类实现接口关键字:implements

                  如实现多个接口,可用,(逗号)分割

        例:

             interface aa{                         //声明一个接口

                  function   insert();                    //接口内定义的成员方法 无需前面加abstract修饰

 

}

        interface  bb{                      //定义第二个接口

        function  select();

 }

interfacecc extends bb{                   //接口继承

         function update();                   //继承后的接口可在重新添加新的成员方法

}

 

    class  dd implements aa,cc{                 //类实现接口   多接口用,(逗号隔开)

        function insert(){}   //成员方法定义接口内的所有成员方法都必须定义,否则报致命性错误                            function  update(){}

                      function  delete(){}

                   }       

                            $a= new dd;            //实例化对象


名称栏目:php面向对象之抽象类和接口
分享URL:http://ybzwz.com/article/jodced.html