作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我读过很多地方都写到java中的不变性是一个理想的特性。为什么会这样?
最佳答案
不变性使得推断对象的生命周期变得更加容易。它在多线程程序中特别有用,因为它使线程之间的共享变得更简单。
某些数据结构假设键或元素是不可变的,或者不会以关键方式更改。例如 map 和集合。它们不必是严格不可变的,但如果是的话,事情会变得容易得多。
不可变对象(immutable对象)的缺点是,它使回收它们变得更加困难,并且会显着影响性能。
简而言之,如果性能是一个问题,请考虑可变对象,如果不是,请尽可能使用不可变对象(immutable对象)。
关于java - 为什么不变性是类中所需的功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15318445/
我是一名优秀的程序员,十分优秀!