Recupérer une classe interne avec Class.forName
Bonjour,
comment récupérer un objet "Class" se référant à une classe interne ?
Exemple :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| class Test
{
public static class A
{
A()
{
System.out.println("A");
}
public void f()
{
System.out.println("f");
}
}
public static void main(String[] args)
{
Class classA = null;
try
{
classA = Class.forName("A");
}
catch (ClassNotFoundException e)
{
System.out.println("ClassNotFoundException");
}
try
{
System.out.println(classA.getName());
A a = (A)classA.newInstance();
a.f();
}
catch (InstantiationException e)
{
System.out.println("InstantiationException");
}
catch (IllegalAccessException e)
{
System.out.println("IllegalAccessException");
}
}
} |
lève l'exception "ClassNotFoundException" .
Idem avec :
Code:
classA = Class.forName("Test.A");
Merci .