At the Java level, object creation and initialization by constructor functions is atomic.
At the JVM level it is not atomic.
Dataflow is used to verify objects have been properly initialized.
- new ? <init> ? super.<init>
- Verify a restricted set of programs.
- one uninitialized object per textual new operation