guiceの@Nullable
コード内のNullPointerExceptionsを減らすには、@Nullableを使用してパラメータを制約します.
実は異常が存在しないわけではなく、統一された場所に置いて管理しているだけです.
サンプルコードは次のとおりです.
公式文書がまだ完全に更新されていないためか、2.0は
com.google.common.base.Preconditionsというクラスではなく
com.google.inject.internal.Preconditionsクラス.
checkNotNullのソースコードは次のとおりです.
すなわち,異常管理を統一した場所に置くことで,コード品質を向上させることができる.
実は異常が存在しないわけではなく、統一された場所に置いて管理しているだけです.
サンプルコードは次のとおりです.
@Test
public void testCheckNotNull() {
getUser("",null);
}
public void getUser(String username,@Nullable String address){
Preconditions.checkNotNull(username,"username");
}
公式文書がまだ完全に更新されていないためか、2.0は
com.google.common.base.Preconditionsというクラスではなく
com.google.inject.internal.Preconditionsクラス.
checkNotNullのソースコードは次のとおりです.
public static <T> T checkNotNull(T reference, Object errorMessage) {
if (reference == null) {
throw new NullPointerException(String.valueOf(errorMessage));
}
return reference;
}
すなわち,異常管理を統一した場所に置くことで,コード品質を向上させることができる.