栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

J bloch使用的“故障原子性”是什么?它对不可变对象有何好处?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

J bloch使用的“故障原子性”是什么?它对不可变对象有何好处?

Bloch的“失败原子性”表示,如果方法抛出异常,则该对象之后仍应可用。通常,对象应与调用该方法之前处于相同状态。

对于不可变对象,您可以简单地从它是不可变的事实中获得收益。没有可以更改对象状态的操作。对象的所有方法都可以创建从原始对象派生的新对象。

例如,

String
有一个
substring(int)
方法。它不会更改原始字符串中的任何内容-
它会创建一个新对象,其内容是所需原始字符串部分的副本。如果抛出异常,那么您将不会获得新对象-
但原始String从未更改。内部没有
substring()
修改原始代码的代码
String
,因此它是故障原子的。

可变对象也可以获取失败原子性,但是您必须特别注意它,而在不可变对象中,它仅源于您将其设计为不可变的注意。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/508446.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号