php中继承的优缺点
谁能告诉我php中继承/多级继承的主要优点和缺点是什么吗?提前感谢:)优点:- 继承的一个关键好处是通过在几个子类之间共享公共代码来最小化应用程序中重复代码的数量。当两个相关类中存在等价代码时,通常可以重构层次结构,将公共代码向上移动到一个相互的超类。这也会导致更好的代码组织和更小、更简单的编译单元 继承还可以使应用程序代码的更改更加灵活,因为从公共超类继承的类可以互换使用。如果方法的返回类型是超类 可重用性——使用基类的公共方法而无需重写的便利性 可扩展性——根据派生类的业务逻辑扩展基类逻辑 数据隐藏——基类可以决定将某些数据保持私有,以便派生类无法更改这些数据 重写——通过继承,我们将能够重写基类的方法,以便在派生类中设计基类方法的有意义的实现 缺点:-php中继承的优缺点,php,oop,inheritance,Php,Oop,Inheritance,谁能告诉我php中继承/多级继承的主要优点和缺点是什么吗?提前感谢:)优点:- 继承的一个关键好处是通过在几个子类之间共享公共代码来最小化应用程序中重复代码的数量。当两个相关类中存在等价代码时,通常可以重构层次结构,将公共代码向上移动到一个相互的超类。这也会导致更好的代码组织和更小、更简单的编译单元 继承还可以使应用程序代码的更改更加灵活,因为从公共超类继承的类可以互换使用。如果方法的返回类型是超类 可重用性——使用基类的公共方法而无需重写的便利性 可扩展性——根据派生类的业务逻辑扩展基类逻辑
不确定这是否是适合此类问题的网站,但可以 假设您有一些基本类
Base
,每个其他类都会扩展它。在base中,您可以定义所有其他类都可以使用的东西,例如连接到mysqli,这样所有类都可以使用$this->mysqli
,而不需要声明它
我建立了一个电子商务cms,我用这种方式。我还定义了一个名为getLink()
的方法,该方法检查是否存在getUrl()
和getTitle()
方法。这些方法在每个子类中都有定义(在我的CMS产品
,类别
…)。让我们来看看Product
类,还有方法getUrl()
和getTitle()
,但是方法getLink()
位于Product
扩展的Base
中。我几乎在任何地方都使用方法getLink()
,因此如果我不想在每个类中都编写它,我只需在基中编写它,我就可以使用它
我的CMS的另一个例子是:在Base
结构中,我检查是否提交了名为global\u update
的输入。它将检查是否定义了$this->table
和$this->id
,如果是,它将用数据更新数据库。否则,我需要为每个更新操作定义一个处理程序。这样,我为每个类都有一个全局函数,并且我只为更复杂的表单编写自己的处理程序
我希望这是可以理解的,如果不能理解,请评论并提问。为什么要否决我的答案?对于你的答案或问题。(我没有否决你的答案)@user3647254我不是指你,而是有人在没有给出任何理由的情况下否决了我的答案:((比如我的问题出了什么问题)你还没有回答任何问题,怎么会有人否决