标签:UI cio value get sam his having can str
It is equivalent to use the equality ==
operator and the equals
method to compare two objects if the equals
method inherited Object
has not been overridden. In this case both checks compare the object references.
But as soon as equals
is overridden, two objects not having the same reference but having the same value can be equal. This rule spots suspicious uses of ==
and !=
operators on objects whose equals
methods are overridden.
String firstName = getFirstName(); //String is a good example of a class overriding the equals method String lastName = getLastName(); if (firstName == lastName) { ... }; // Non-compliant, the two literals can have the same value and yet the condition is false
String firstName = getFirstName(); String lastName = getLastName(); if (firstName != null && firstName.equals(lastName)) { ... };
"==" and "!=" should not be used when "equals" is overridden
标签:UI cio value get sam his having can str
原文地址:http://www.cnblogs.com/winner-0715/p/7222286.html