Why does javac insert Objects.requireNonNull(this) for final fields? Why does javac insert Objects.requireNonNull(this) for final fields? java java