1) call equals() and equalsIngoreCase method on known String literal rather unknow object.
eg. "knowObject".equals(unknowObjet)就很好
2)Prefer valueOf() Over toString() where both return same result
toString会挂,但valueOf会返回"null"
3) Using null safe methods and libraries
某些Helper,Utils函数会检测null,
比如StringUtils
4) Avoid returning null from method, instead return empty collection or empty array.
跟Null Object Pattern一样
5) Use of @NotNull and @Nullable annotation
IDE或findbugs会帮你做检查
6) Avoid unnecessary autoboxing and unboxing in your code
这个会抛异常
7) Follow Contract and define reasonable default value
初始化时总是赋合理的初值
eg. "knowObject".equals(unknowObjet)就很好
2)Prefer valueOf() Over toString() where both return same result
toString会挂,但valueOf会返回"null"
3) Using null safe methods and libraries
某些Helper,Utils函数会检测null,
比如StringUtils
4) Avoid returning null from method, instead return empty collection or empty array.
跟Null Object Pattern一样
5) Use of @NotNull and @Nullable annotation
IDE或findbugs会帮你做检查
6) Avoid unnecessary autoboxing and unboxing in your code
这个会抛异常
7) Follow Contract and define reasonable default value
初始化时总是赋合理的初值