Können einige mir bitte erklären, was zu tun@XmlElementRefs & @XmlElementRef Annotationen in Java
@XmlElementRefs
und
@XmlElementRef
Annotationen in Java bedeuten und was ist ihre Verwendung ..
EDIT: @skaffman
in Ordnung, nehme ich an eine solche Sammlung
@XmlElementRefs({
@XmlElementRef(name="ElementA", type=ClassA),
@XmlElementRef(name="ElementB", type=ClassB) }
)
List<Object> items;
Jetzt haben wie ich jedes einzelne Element dieser Liste zugreifen? Ist der folgende Code korrekt?
for (int j = 0; j < items.size(); ++j) {
if (items.get(i).getClass().equals(ClassA)) {
// perform ClassA specific processing:
} else if (items.get(i).getClass().equals(ClassB)) {
// perform ClassB specific processing:
}
}
Ist dieser Ansatz richtig? Gibt es eine bessere Möglichkeit, jede klassenspezifische Verarbeitung durchzuführen? Ich meine, gibt es eine Möglichkeit, diese if else
Konstrukte zu vermeiden?
Normalerweise verwenden Sie dies mit Polymorphie. ClassA und ClassB erweitern beide ClassBase, so dass Sie die Verarbeitung nicht if/else korrekt ausführen müssen. – ewernli