相关疑难解决方法(0)

为什么PHP 5.2+禁止抽象静态类方法?

在PHP 5.2中启用严格警告后,我看到一个项目的严格标准警告,这些警告最初是在没有严格警告的情况下编写的:

严格标准:静态函数 Program :: getSelectSQL()在Program.class.inc中不应该是抽象

有问题的函数属于抽象父类Program,并被声明为abstract static,因为它应该在其子类中实现,例如TVProgram.

我确实在这里找到了对此更改的引用:

删除了抽象的静态类函数.由于疏忽,PHP 5.0.x和5.1.x允许在类中使用抽象静态函数.从PHP 5.2.x开始,只有接口才能拥有它们.

我的问题是:有人可以清楚地解释为什么在PHP中不应该有一个抽象的静态函数?

php oop static abstract

120
推荐指数
4
解决办法
6万
查看次数

标签 统计

abstract ×1

oop ×1

php ×1

static ×1