Java 里想要真正不可变,只写 final 还不够
· 阅读需 2 分钟
学 Java 时,很多人第一次接触不可变对象,都会很快记住 final 这个关键字。于是项目里就容易出现一种误会:只要字段加了 final,对象似乎就安全、稳定、不会被改坏了。可真正写一阵业务之后你会发现,事情没这么简单。
学 Java 时,很多人第一次接触不可变对象,都会很快记住 final 这个关键字。于是项目里就容易出现一种误会:只要字段加了 final,对象似乎就安全、稳定、不会被改坏了。可真正写一阵业务之后你会发现,事情没这么简单。
“接口和抽象类怎么选”几乎是每个 Java 学习阶段都会碰到的问题。
很多回答会从语法、继承、默认实现这些点切入,这些都没错。但 2017 年我在项目里慢慢形成的判断是:真正决定选择的,常常不是当前写起来哪个方便,而是未来变化会往哪个方向长。