2010-07-14 6 views
0

Que font ces lignes de code?question de syntaxe java

private interface ComparisonCallback<ComparisonT> 
{ 
    public ComparisonT getComparisonValue(CVRDataElement e); 
} 

suivi de cette déclaration de méthode:

public <ComparisonType> List<MyDataTable> getGenericSubTable(ComparisonCallback<ComparisonType> cc) 

Plus précisément, je ne comprends pas la balise ComparisonType - ce que cela a à voir avec les médicaments génériques?

+0

Cette syntaxe ne semble pas correcte. Êtes-vous sûr que c'est correct? –

+0

@Joe c'est la syntaxe correcte pour les génériques en Java (sauf pour l'espace manquant ...) –

+0

Ne devrait pas ComparisonT et ComparisonType être le même mot au lieu de différent? –

Répondre

1

ce que cela a à voir avec les génériques

Oui. Vous pouvez lire sur les génériques here.

+0

Merci pour le lien - ce que j'avais lu précédemment sur les génériques n'a pas expliqué les paramètres de type. –

0

La première interface est la définition d'une fonction de rappel à utiliser dans la méthode getGenericSubTable. Le getGenericSubTable paramètre la valeur de retour de la fonction de rappel, ce qui signifie que pour faire ce qu'il doit faire, il a besoin de la fonction de rappel mais peu importe le type de son type de retour. Cela signifie probablement que vous utilisez le rappel pour renvoyer l'objet que vous souhaitez utiliser pour la comparaison à partir de l'objet CRVDataElement.