gpt4 book ai didi

oop - 面向对象的编程和事务

转载 作者:行者123 更新时间:2023-12-04 03:00:01 24 4
gpt4 key购买 nike

一点介绍:

类包含字段和方法(这次让我跳过属性)。
字段代表类的状态。
方法描述类的行为。

在设计良好的类中,如果抛出异常,方法不会改变类的状态,对吗? (换句话说,无论发生什么,类的状态都不应该被破坏)

题:

是否有框架、设计模式、最佳实践或编程语言以事务风格调用一系列方法,以便类的状态不会改变(在异常的情况下),或者一切都成功?

例如。:

// the class foo is now in the state S1
foo.MoveToState2();
// it is now (supposed to be) in the state S2
foo.MoveToFinalState();
// it is now (supposed to be) in the state, namely, S3

当然,在 MoveToState2() 中都可能发生异常。和 MoveToFinalState() .但是从这段代码中我想要类 foo处于状态 S1 或 S3。

这是一个涉及单个类的简单场景,没有 if的,没有 while 's,没有副作用,但我希望这个想法很清楚。

最佳答案

看看Memento pattern

The memento pattern is a software design pattern that provides the ability to restore an object to its previous state (undo via rollback).

关于oop - 面向对象的编程和事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1974508/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com