Is the `null` init needed? And could this be `final`?