Problem in der GetDeclaredMethods (java)

Ich habe ein kleines problem in meinem code

Ich habe 2 Klassen

public class A {

     public A foo(int a) {return new A();}
}

public class B extends A{

     public B foo(int x){ return new B();}
}

nun in meinem code will ich drucken nur die Methode, die erklärt wurde, in der Klasse B

in dieser Weise

B b = new B();

Method[] m = b.getClass().getDeclaredMethods();

for (int i = 0; i < m.length; i++) {

System.out.print(m[i].getName());   
}

warum der Ausgang ist

foo

foo

warum die GetDeclaredMethods findet auch die foo in der Klasse A?
wie kann ich es beheben?

Dank

InformationsquelleAutor Dazel | 2009-12-25

Schreibe einen Kommentar