don't you think it's safer to have a checkNotNull during construction?