一個類中增加一個全新的方法,這個違背開放封閉原則沒有?比方說,現在增加了一個新表而之前這個類只返回了已知表的實例。
2 回答

婷婷同學_
TA貢獻1844條經驗 獲得超8個贊
增加了一個新表,是否可以這樣考慮:
表是變化的,應該進行封裝。抽象出一個表接口,原有類不再返回表的實例,而是返回表的接口。這樣新增加表的時候,只需要新建一個實現了表接口的新類,就不會涉及對原有類的修改了。
這樣就符合開放封閉原則了,對擴展開放(擴展一個實現了表接口的新類),對修改關閉(不修改原有類)。
其實主要還是看變化的原因是什么,什么容易產生變化,就對什么進行封裝。表有很多種,是容易產生變化的,那么就對表進行封裝。
- 2 回答
- 0 關注
- 376 瀏覽
添加回答
舉報
0/150
提交
取消