在查看一些旧代码时,我遇到了这个 gem:
MyObject o = new MyObject("parameter");
if (o == null) o = new MyObject("fallback parameter");
第二行在 Eclipse 中被标记为死代码,我明白为什么。似乎没有显式抛出异常,构造函数也不可能MyObject
抛出任何类型的异常(例如NullPointerException
s)。
我的问题是为什么有一个空检查?以前在旧版本的 Java 中构造函数是否可以返回 null?或者这只是无用和死代码?