À l'époque où les applets étaient monnaie courante, on pouvait avoir une URL dans le classpath. Lorsque le chargeur de classe avait besoin d'une classe, il recherchait tous les emplacements du classpath, y compris les ressources http. Parce que vous pouvez avoir des choses comme des URLs et des répertoires sur le classpath, il n'y a pas de moyen facile d'obtenir une liste définitive des classes.
Cependant, vous pouvez vous en approcher. Certaines des bibliothèques de Spring le font maintenant. Vous pouvez récupérer tous les jar's sur le classpath, et les ouvrir comme des fichiers. Vous pouvez ensuite prendre cette liste de fichiers, et créer une structure de données contenant vos classes.