当缺少重要参数/依赖项时,要引发什么异常?

2022-08-31 14:11:02

采取这种方法

/**
 * @return List of group IDs the person belongs to
 *
 */
public List<String> getGroups() {
    if (this.getId().equals("")) return null;
}

我想抛出异常而不是返回null,当没有设置重要的参数/依赖项时,要抛出的异常是什么?


答案 1

如果参数/参数是从外部控制的,我会使用 IllegalArgumentException,或者如果只是在错误的时刻(状态)调用了方法,我会使用 IllegalStateException。在你的具体案例中,我认为是后者。一个(可疑的)替代方案是NullPointerException

但是,这应该明确记录在 中,以便用户了解原因。@throws