On the Boundaries of Final


In my research group, Luke Cheeseman is tackling the complexities of concurrency and data races—work that is brilliantly detailed in his paper, When Concurrency Matters: behavior-Oriented Concurrency. Following recent discussions with Luke and the announcement of JEP 500: Prepare to Make Final Mean Final targeting JDK 26, I was inspired to examine the Java Language Specification (JLS) to explore the formal boundaries of final. It is a surprisingly approachable document, and I strongly advocate for going straight to it rather than relying on folklore.

More at https://norlinder.nu/posts/On-the-Boundaries-of-Final/