ERLEDIGT
NEIN
NEIN
ANTWORTEN
4
4
ZUGRIFFE
1302
1302
EMPFEHLEN
-
Ich möchte mehrere Klassen um ein bestimmtes Attribut erweitern, ohne dafür jede Klasse einzeln anfassen zu müssen. Vielmehr möchte es flexibel halten, so dass auch neu hinzukommende Klassen einfach um dieses Attribut erweitert werden können.
Per Mehrfachvererbung könnte ich einfach eine Klasse mit diesem neuen Attribut von allen bisherigen Klassen ableiten. Leider geht das in Java nicht.
Wie kann ich das alternativ realisieren? Irgendein Entwurfsmuster? Habe mir schon Wrapper, Dekorierer usw. angeschaut, aber die fassen alle die ursprünglichen Klassen mit an.
Konkret:
Ich habe eine Bibliotheks-Verwaltung, die bspw. Medien, Benutzer usw. speichert. Bisher lief diese Anwendung allein. Nun sollen per JMS entfernte Bibliotheken angebunden werden. Ich würde daher gerne jedes Entitiy (Medium, User, etc.) unkompliziert um eine Library Id erweitern.Nur tote Fische schwimmen mit dem Strom
-
20.07.09 13:14 #2
- Registriert seit
- Aug 2008
- Ort
- Bückeburg (Niedersachsen)
- Beiträge
- 21
Wenn ich dich richtig verstanden habe, Stichwort: Interface (Schnittstellen). Damit kann man das "Prinzip der Mehrfachvererbung" erreichen, denn Klassen können beliebig viele dieser Schnittstellen implementieren...
gruß
jal1976Windows Bluescreen:
Ihre Maus und Tastatur wurden aus dem System entfernt.
Drücken Sie eine beliebige Taste zum Fortfahren...
Nice try:
public static void main(String[] args)
{
for(int i=1; i<500; i++)
{
System.out.println("I must not throw paper planes in the class!");
}
}
-
20.07.09 13:34 #3
Moin,
genau - die Konstruktoren der Klasse müssen sich nur in der Art oder Anzahl der Attribute unterscheiden ! !
Gruß
KlausEs ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!
Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
-------------------------------------------------------------------------------------------------
Ich beantworte keine Fragen per PN !!
Stellt Eure Fragen im Forum - dann haben alle etwas davon !!
-
20.07.09 14:54 #4
- Registriert seit
- Aug 2005
- Ort
- Karlsruhe (Baden-Württemberg)
- Beiträge
- 905
Wäre super wenn ihr euren Code in dieser Form einfügt:
[java]System.out.println("Hello World");[/java]Code java:1
System.out.println("Hello World");
Für erledigte Threads dürft ihr den "erledigt"-Button anklicken!
Über Dank freut sich jeder, der euch geholfen hat - ein Klick auf "Danke" kostet ja nicht mal was
Blog: http://javaeffective.wordpress.com/
-
21.07.09 20:58 #5
- Registriert seit
- Feb 2007
- Beiträge
- 6
Konkret: In Interfaces gibt es keine deklarierten Instanzvariablen. Nur Konstanten können deklariert werden.
Die Lösung mit den getter und setter -Methoden würde ich auch vorschlagen. Einfach in ein Interface und die Klassen alle benötigten Interfaces implementieren lassen.
Deklaration der Methoden als "public abstract" in Interfaces ist redundant, da Methoden in Interfaces dies sowieso immer sind.
Ähnliche Themen
-
Bestehende xml Datei / Datenstruktur kopieren und um ein Attribut erweitern
Von MoeZarella im Forum XML TechnologienAntworten: 2Letzter Beitrag: 12.07.10, 22:12 -
XSLT Problem - Brauche ein bestimmtes Attribut
Von DerLukasz im Forum XML TechnologienAntworten: 4Letzter Beitrag: 03.08.09, 11:08 -
Klasse mit mehreren Klassen erweitern
Von südpol im Forum PHPAntworten: 3Letzter Beitrag: 24.01.05, 17:43 -
Mehrfachvererbung/eigene Klassen
Von kittie im Forum JavaAntworten: 7Letzter Beitrag: 14.04.04, 12:48 -
allen <td> tags ein bestimmtes class attribut zuweisen
Von sevi im Forum Javascript & AjaxAntworten: 2Letzter Beitrag: 15.11.03, 19:11





Zitieren

Login





