Vererbung mit abstrakten Klassen

PeteProgram

Mitglied
Ich habe folgende Vererbungsfolge

Klasse1 --> Abstrakte Klasse --> Klasse2 --> Klasse3 ...

Ich benötige nun, wenn für die Klasse3 Informationen aller Methoden und Felder die diese Klasse beinhaltet (über java.lang.reflect kein Problem). Leider werden mir damit die Funktionen/Felder der abstrakten Klasse nicht zur Verfügung gestellt.
Liegt das daran, dass diese noch nicht "konkret", also in den nachfolgenden Klassen implementiert sind, oder gibt es ein andere Möglichkeit, an diese heranzukommen?
Problematisch wird nähmlich nun, dass ich alle Methoden in ca. 50 Klassen implementieren müsste.

Hoffe ich hab mich verständlich ausgedrückt.
 
Hi, wie ist das denn,
wenn du Dir mit der Methode getSuperclass() die abstracte Klasse geben lässt, und dir dort die Methoden und Atribute zusätzlich rausholst? Oder geht das nicht, ich habs selbst nicht probiert, ist aber ne Idee!! :suspekt:
 
Das ist ja mein Problem, die abstrakte Klasse wird einfach übersprungen (habs mit while-Schleife ausprobiert und dann ... .getClass().getName() ausgegeben)
 
also was ich geschrieben habe war mist(mal wieder :-( ) wie auch immer es geht doch
Code:
import java.lang.reflect.Method;

public class A extends B{
	
	static Method [] m = null; 
	public A(){
		m = this.getClass().getSuperclass().getMethods();
	}
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		
		for (int i = 0; i < m.length; i++) {
			System.out.println(m[i]);
		}
		
	}
}
damit hat er bei mir die methoden ausgegeben, auch wenn sie als abstrct deklariert waren, allerdings muessen sie als public deklariert sein...
 
Zurück