Chapter 5. Programmer Misconceptions

The guidelines in this chapter address areas where developers often make unwarranted assumptions about Java language and library behaviors, or where ambiguities can easily be introduced. Failure to follow these guidelines can result in programs that produce counterintuitive results.

This chapter contains guidelines that address

1. Misconceptions about Java APIs and language features

2. Assumptions and ambiguity-laced programs

3. Situations in which the programmer wanted to do one thing but ended up doing another

66. Do not assume that declaring a reference volatile guarantees safe publication of the members of the referenced object

According to the Java Language Specification (JLS), §8.3.1.4, “volatile Fields” ...

Get Java™ Coding Guidelines: 75 Recommendations for Reliable and Secure Programs now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.