Java: Comment faire pour vérifier si un Champ est de type java.util.Collection

J'ai une méthode utilitaire qui va par le biais de différentes classes et de manière récursive récupère les champs. Je veux vérifier si ce champ est une Collection.
Voici un exemple de code:

void myMethod(Class<?> classToCheck)

Field[] fields = classToCheck.getDeclaredFields();

for(Field field:fields)
{
   //check if field if a Collection<?>

}

Merci d'avance pour l'aide.

  • Voulez-vous tester si le type déclaré de la domaine est une mise en œuvre de la Collecte, ou si l'objet référencé par le champ dans un objet donné implémente Collection? Les deux résultats pourraient être différents si: a) le Terrain a été déclaré comme Objet, mais un objet de la mise en œuvre de la Collecte a été confiée, ou b) le Terrain a été déclaré que la Collecte (ou un descendant), mais il était nul.
  • double possible de Howto savoir si un champ est instanceof un type via la réflexion?