PHP面向对象之抽象类,抽象方法

抽象类,抽象方法

抽象类:

是一个不能实例化的类;

定义形式:

abstract  class  类名{}

为什么需要抽象类:

它是为了技术管理而设计!

抽象方法:

是一个只有方法头,没有方法体的方法定义形式;

定义形式:

abstract  function  方法名( 形参1,形参2.... ) //注意,这里必须有分号;

为什么需要抽象方法:

它也是为了技术管理而设计:要求下级类需要去实现这个方法的“具体做法”;

 

抽象类和抽象方法的细节

1,一个抽象方法,必须在抽象类中;

2,反过来,抽象类中可以没有抽象方法——虽然不常见;

3,可见:抽象方法是为了规定下级类中“必须”要具体去完整某个工作(任务);

4,下级类中继承了上级类的抽象方法,则要么去“实现该方法的具体内容”,要么自己也作为抽象类(即其继承的抽象方法仍然是抽象的);

5,子类实现父类的抽象方法的时候,其形参也应该跟父类保持一致,其访问权限也不能更小;

——其原因其实这是“重写现象”,自然应该遵循重写的要求;

原文地址:https://www.cnblogs.com/457248499-qq-com/p/7384454.html