我想减少 Java 中的冗余和冗长的 null 检查,但我知道 Java 没有标准的 @NotNull 注释,因为 c# 有可以使用的合同,例如
Contract.Requires( x != null );
我可能会遗漏一些东西,但我不能自己编写代码吗?
public class Contract {
public static void requireNotNull(Object object) {
if ( object == null )
throw new IllegalArgumentException("Contract forbids null");
}
}
这是否缺少@NotNull 或合同的任何好处?