加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

抽象类在php中扩展抽象类?

发布时间:2020-12-13 17:03:15 所属栏目:PHP教程 来源:网络整理
导读:我正在研究一个简单的抽象数据库类.在我对这个类的使用中,我想要一些实例是一个单例.我想的是有一个不是单例的抽象类,然后将它扩展到另一个单例的抽象类中.这可能吗?推荐的? 编辑:我想要两个几乎完全相同的摘要,除了一个是单身.所以唯一的区别是,一个将具
我正在研究一个简单的抽象数据库类.在我对这个类的使用中,我想要一些实例是一个单例.我想的是有一个不是单例的抽象类,然后将它扩展到另一个单例的抽象类中.这可能吗?推荐的?

编辑:我想要两个几乎完全相同的摘要,除了一个是单身.所以唯一的区别是,一个将具有另一个的所有功能,但是将具有使其表现得像单身的其他属性和方法.

我想为此设置一个基类代码库,因此当我进行更改时,我不必保持两个文件同步.

解决方法

在我做事的方式中,我相信抽象单身人士没有用处.这是因为,

1)你想要成为单身人士的是你在应用程序中实例化的最后一个类,无论它是一个库,模型,控制器还是视图而不是抽象.

2)添加单例方法很简单,可以用8行编写.见下文.

protected static $_instance;
public static function getInstance()
{
    if (!isset(self::$_instance)) {
        self::$_instance = new self();
    }
    self::$_instance;
}

3)PHP 5.3以下版本不支持后期静态绑定.这将导致实例化抽象类而不是继承它的最终类,并且将无法按预期运行,正如Gordon和nuqqsa已经提到的那样.因此,为了向后兼容,最好避免它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读