开发-封闭原则

一个类中增加一个全新的方法,这个违背开放封闭原则没有?

比方说,现在增加了一个新表而之前这个类只返回了已知表的实例。


小怪兽爱吃肉
浏览 356回答 2
2回答

婷婷同学_

增加了一个新表,是否可以这样考虑:表是变化的,应该进行封装。抽象出一个表接口,原有类不再返回表的实例,而是返回表的接口。这样新增加表的时候,只需要新建一个实现了表接口的新类,就不会涉及对原有类的修改了。这样就符合开放封闭原则了,对扩展开放(扩展一个实现了表接口的新类),对修改关闭(不修改原有类)。其实主要还是看变化的原因是什么,什么容易产生变化,就对什么进行封装。表有很多种,是容易产生变化的,那么就对表进行封装。

三国纷争

开放封闭原则...就是对外开发、对内封闭。对一个类的修改,恐怕谈不上什么原则吧。对内封闭,就是避免对类的修改。
打开App,查看更多内容
随时随地看视频慕课网APP