一种情况下可以检查参数如下
public abstract class AbstractCHeck{
protected boolean afterObjectChecked( boolean originalResult)
{
return originalResult;
}
protected void beforeObjectChecked(Object object)
{
Assert.notNull(object, getClass().getName() + " null values");
}
public boolean doAllErroeFreeOperation(Object object)
{
beforeObjectChecked(object); // THIS CODE PROTECT AGAINST NULL BEFORE ACTUAL METHOD IS CALLED.
boolean result = doActualOperation(object);
return afterObjectChecked(result);
}
public abstract boolean doActualOperation(Object obj);
public class mainCheck extends AbstractCHeck{
public boolean doActualOperation(Object obj){
// some operation done
}
Client{
Maincheck clientprogram=new Maincheck();
clientprogram.doAllErroeFreeOperation(null); //
}
案例二。 可以在调用实际方法并检查其值之前使用拦截器。
还有哪些其他情况可以有效地捕获运行时异常,以便客户端代码不必处理它并且可以从框架代码等通用代码中提供解决方案?