設計模式(Java)—Memento模式

使用面向對象編程的方式實現撤銷功能時,需要事先保存實例的相關狀態信息。然後,在撤銷時,還需要根據所保存的信息將實例恢復至原來的狀態。 要想恢復實例,需要一個可以自由訪問實例內部結構的權限。但是,如果稍不注意,又可能會將依賴於實例內部結構的代碼分散地編寫在程序中的各個地方,導致程序變得難以維護。這種情況就叫做「破壞了封裝性」。 通過引入表示實例狀態的角色,可以在保存和恢復實例時有效地防止對象的封裝性
相關文章
相關標籤/搜索