gpt4 book ai didi

java - 在 Java 中使用 Validate 比进行手动错误检查有什么好处?

转载 作者:行者123 更新时间:2023-11-29 03:43:39 26 4
gpt4 key购买 nike

我正在修改一些代码,我看到一致使用“验证”进行错误检查。

Validate.notNull(x, "x cannot be empty")if(null != x){...} 有什么区别?两者的优势是什么?

编辑:我正在使用 org.apache.commons.lang.Validate

最佳答案

编辑:假设您指的是 org.apache.commons.lang.Validate


第一个说用空参数调用方法是完全非法的,这是使用该方法的程序员的编码错误。

第二个只是说有不同的行为取决于 x 是否为 null。

如果你真的这样做,它就变成了一个可读性问题:

if(null != x)
{
//...
} else {
throw new IllegalArgumentException( "x cannot be empty");
}

if 的 body 有多长?为什么非法调用该方法的结果与检查是否被非法调用在物理上是分开的?一旦您添加了更多具有各种不同法律状态的参数,其他人就很难理解。如果您在一开始就明确拒绝所有已知绝对非法的调用,这对其他程序员会友好得多。

关于java - 在 Java 中使用 Validate 比进行手动错误检查有什么好处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12009499/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com