...
This compliant solution uses an Optional String instead of a String object that may be null. The Optional class ( java.util.Optional [API 2014]) was introduced in Java 8 and can be used to mitigate against null pointer dereferences .
| Code Block | ||
|---|---|---|
| ||
public boolean isProperName(Optional<String> os) {
String names[] = os.orElse("").split(" ");
return (names.length != 2) ? false :
(isCapitalized(names[0]) && isCapitalized(names[1]));
}
|
...
Rule | Severity | Likelihood | Remediation Cost | Priority | Level |
|---|---|---|---|---|---|
EXP01-J | Low | Likely | High | P3 | L3 |
Automated Detection
Null pointer dereferences can happen in path-dependent ways. Limitations of automatic detection tools can require manual inspection of code [Hovemeyer 2007] to detect instances of null pointer dereferences. Annotations for method parameters that must be non-null can reduce the need for manual inspection by assisting automated null pointer dereference detection; use of these annotations is strongly encouraged.
...
| ISO/IEC TR 24772:2010 | Null Pointer Dereference [XYH] |
CWE-476, NULL Pointer Dereference |
...