首页 > 开发 > php > 正文

PHP interface 代价非常高昂 请使用抽象类代替接口

2017-09-06 14:25:14  来源:网友分享

在《Android 与 PHP 开发最佳实践》中看到“PHP interface 代价非常高 请尽可能使用抽象类代替接口” ,有点晕,求具体的分析。

解决方案

性能高低,我这边没法分析,我不觉得有必要去分析。
抽象类,和 接口类 出现的目的是不一样的,他们的使用方式是不一样的。
接口类,是定义一些接口标准,只定义不实现。实现接口类的类,要表达的是,我有 接口类 中的定义的方法,但是具体实现方式各异。
抽象类,是可以实现具体方法的,继承抽象类的类,我用的就是抽象类的方法,包括具体实现(子类也可以重写方法,覆盖父类)

注意,我说的是 实现接口类继承抽象类,在 PHP 只能 extends 一个父类(包括抽象类),但可以 implements多个接口类,这个在用法上就区分了。

我是没看过 你提到的这本书,我是觉得,要有自己的分辨,合理使用。
及时真的性能上有小差别,但是为了程序的可维护性,牺牲一点小性能,也是可以接受的。