| 

.NET C# Java Javascript Exception

2
Ich möchte mit der Java-Reflection-API ein Testprogramm für Klassen schreiben, mit dem ich eigene Klassen und auch deren Konstruktoren sehr schnell testen kann. Die Konstruktoren (java.lang.reflect.Constructor) frage ich mit der Methode getConstructors der Reflection-API und die einzelnen Parameter der Konstruktoren mit der Methode getParamaterTypes. Anschließend kann ich mit den ausgelesenen Argumenten die Klasse via newInstance neu instanziieren und mich danach durch die weiteren Bestandteile der Klasse hangeln (Methoden, Felder, etc.). Um alle Bestandteile der Klasse frei testen zu können, benötige ich jetzt Eingabemasken, die sich entsprechend den unterschiedlichen Parametern dynamisch aufbauen. Wie setze ich sowas am Besten um? Wo finden sich Quelltextbeispiele in Java?
19.06.2012
huzi8t9 11 2
1 Antwort
1
java steuerelemente zur laufzeit

Für einfache Datentypen wird das sicherlich funktionieren. Aber was ist, wenn eine Methode komplexere Datentypen erwartet? Du müsstest dann nicht nur diese eine Klasse reflektieren die Du testen willst, sondern auch alle anderen verwendeten Klassen. Die dann ihrerseits wieder mit den unterschiedlichsten Konstruktoren und Methoden daher kommen.
Klar, die eigentliche Logik ist immer die selbe, und letzen endes kann man jeden noch so komplexen Datentypen in X Reflektionstiefen auf einfache Typen herunterbrechen.

Aber das stelle ich mir unnötig aufwendig vor, und würde deshalb auch eher zu Unit-Tests raten. Damit kannst Du ganz gezielt Deine Klassen und Methoden testen, und bist nicht auf Eingabemasken angewiesen, die zur Laufzeit erstellt werden müssten.

Ansonsten fällt mir grade noch das Propertygrid ein... Damit könntest Du zumindest schon mal einfache und komplexere Datentypen bearbeiten ohne geeignete Steuerelemente selbst erstellen zu müssen. Es müsste dann pro Parameter ein Propertygrid geben.
Aber wie tief das Propertygrid reflektiert kann ich dir leider nicht sagen, da ich damit selbst keine Erfahrungen hab.
19.06.2012
Christian M. Müller 251 1 7
+1 für den Hinweis auf Unit-Tests - aber welches PropertyGrid (in Java!) meinst Du?
Siehe auch http://stackoverflow.com/questions/842040/propertygrid-in-java-swing
Matthias Hlawatsch 20.06.2012
In Eclipse soll es so ein PropertyGrid geben.
http://www.eclipse.org/articles/Article-Tabbed-Properties/tabbed_properties_view.html
Der Artikel ist zwar schon älter, aber grundsätzlich sollte das da trotzdem funktionieren.

Nur damit habe ich (wie gesagt) keine Erfahrungen.
Christian M. Müller 20.06.2012

Stelle deine Java-Frage jetzt!