温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2020-06-04 13:50:40 来源:网络 阅读:384 作者:w_jun2012 栏目:web开发

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;            //实例化对象


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI