@XmlElementRefs & @XmlElementRef les annotations en Java

Peut-il m'expliquer ce qui ne

@XmlElementRefs

et

@XmlElementRef

annotations signifie en Java et quelle est leur utilisation..

EDIT:
@skaffman

bon, supposons que j'ai une telle collection

@XmlElementRefs({
    @XmlElementRef(name="ElementA", type=ClassA),
    @XmlElementRef(name="ElementB", type=ClassB) }
)

List<Object> items;

Maintenant, comment puis-je accéder à chaque élément de cette liste? Est le code suivant correcte?

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:
    }
}

Est-ce correct? Est-il une meilleure façon d'effectuer chaque classe de traitement spécifique? Je veux dire est-il un moyen d'éviter ces if else constructions?

Vous utilisez habituellement ce avec le polymorphisme. ClassA et ClassB à la fois d'étendre ClassBase, de sorte que vous n'avez pas besoin de si/d'autre de l'expédition correctement le traitement.

OriginalL'auteur 6pack kid | 2010-01-27