`val` is a `private final` field, and final fields are safely published, right? Or do you mean something else?