Instancier une classe dont le nom est contenu dans une String
Bonjour,
Je veux instancier une classe dont je ne connais pas le nom à l'avance. Il sera dans une String lors de l'execution du programme.
Idéalement, je voudrais avoir un fichier de config qui contient des noms de classes, par exemple
Code:
1 2 3
| [maSection]
actions = monPackage.Classe1
action2 = Classe2 |
Et dans mon code, je voudrais pouvoir instancier ma classe selon ce paramètre. Exemple :
Code:
1 2
| action = ConfigReader.get(maSection, actions)
monInstance = [fonction/action/astuce](action)(paramInstance) |
Je sais qu'il est possible d'instancier un module dynamiquement avec __import__, par exemple
Code:
monModule = __import__(actions)
Mais je n'ai pas réussi à instancier la classe sans faire de test sur son nom.
Une idée ?
Stéphane