Kompatibilität der Methode equals() für Duration und XMLGregorianCalendar überprüfen

Diese Regel markiert die Verwendung der equals(Object param) Methode javax.xml.datatype.Duration oder javax.xml.datatype.XMLGregorianCalendar .

Java 6 gibt jetzt bei Übergabe eines Nullparameters den Wert "false" zurück. Dies geschieht, um eine NullPointerException auszulösen. Überprüfen Sie die Anwendungslogik, um festzustellen, ob der Code auf Vorhandensein von "false" (und nicht "NullPointerException") testen soll.

Beispiel 1:

< span class="Code" > public MyClass extends Duration {
private void doX(){
boolean b = super.equals(someObject);
}
}

Beispiel 2:

public MyClass {
private void doX(){
XMLGregorianCalendar c = getCalendar();
boolean b = c.equals(someObject);
}
}

In Beispiel 1 super.equals(someObject) Aufruf wird markiert.

In Beispiel 2 c.equals(someObject) Aufruf wird markiert.

Weitere Informationen finden Sie unter Punkt 22 in der Veröffentlichung Java SE 6 Compatibility.