Comment trouver le nom de la class que l'on exécute dans le main ?
Pour info, je désire faire une class abstraite qui s'instantie elle-même dans son propre main par reflexion, pour cela j'ai besoin de son nom. L'objectif étant de faire des classes filles qui l'étendent et ne possède que le code de la méthode doit().
J'ai bien penser à définir en dur le nom de la class puis utiliser l'héritage mais l'héritage d'attribut ou de méthode statique est impossible (le main est statique et ne peux utiliser que des attribut statique)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 public abstract class A { public static void main(String args[]) { String className = donnelenomdelaclass(); // retourne le nom de la classe Class aClass = Class.forName(className); Object instance = aClass.newInstance(); instance.doit() } public abstract doit() } public class B { public doit() { // mon code; } }
Partager