我阅读了Brian Goetz在2006年版的Java Concurrency in Practice中的以下声明。
“虽然可以编写一个将线程的所有状态存储在公共静态字段中的线程安全程序,但要验证其线程安全性要困难得多……”(第4章-组成对象; 4.1设计线程安全类的第1段)
所有这些,我都认为静态字段属于一个类,并且不能存储对象的状态。我在误解什么吗?
最佳答案
作者没有说任何关于静态字段的对象。
他的意思是,将数据存储在(原因)类的静态字段中的程序要比“适当地使用封装的程序”难于使其真正成为线程安全的程序。
是的,实例(对象)能够将数据存储在类的静态字段中。但是作者想到了另一件事。