假设您正在编写一个通用doSomething
方法,您可以在其中检查字符串参数的有效性:
public void doSomething(String argument) {
if(!checkArgument(argument)) {
// Argument is not valid
throw new IllegalArgumentException("Argument " + argument + " is not valid");
}
...
抛出其消息可能包含任意文本的异常是否安全?或者它可以使程序暴露于日志伪造或其他一些安全问题?
是否有处理此类情况的最佳实践?