php抽象类和接口

abstract  关键字  代表抽象类;

    场景联想:如果项目经理需要对所有的子类进行规范,就是说,这些成员必须有,且必须使用那些名字,就需要使用抽象类的概念了;

    1.抽象类不能实例化;

    2.如果一个类里面有其他方法,被申明为抽象类了,这个类就得声明抽象类

    3.只要这个方法被声明抽象方法,就不能写函数体,将函数后面的{}去掉,函数体有子类实现;

    4.在继承一个抽象类的时候,子类必须定义父类中的所用抽象方式;不是抽象方法,子类可以不用定义;

    

接口 interface

  接口的用途和抽象类差不多,都是为了写一些规范;

  1.使用interface关键字定义接口,接口在方法都是空的没有函数体。

  2.接口中所有的方法都是public。

  3.使用implements这个操作符。

  4.一个类可以实现多个接口,接口和接口之间只要,隔开。

  5.接口和接口之间的方法尽量不要重名,如果重名了,那么参数等要保持一致

  

抽象类和接口的区别:

  1.接口使用implements而抽象类使用extends实现;

  2.接口中只能声明公有的方法 抽象类属性 常量 方法 都可以声明;

  3.接口没有构造函数,抽象类有;

  4.接口可以实现多个接口,但是抽象类只能继承一个;

原文地址:https://www.cnblogs.com/wwwzhaocom/p/10679211.html