Mehrfacher vererbungsersatz gesucht.

Status
Nicht offen für weitere Antworten.

Empire Phoenix

Top Contributor
Ich denke(hoffe) das es für mein Problem eine in Java mögliche Lösung gibt bin mir leider aber nicht sicher :/

Mein Problem: Ich will eine basisklasse erstellen, die die meisten zugriffe kapseln kann auf das unterliegende system.

Nun habe ich aus bibliotheken die Klasse MasterPhysicNode welche Node extended, sowie die Klasse Node.
Um darauf aufzubauen (im genauen ein Netzwerkcode) war jetzt die überlegung mehrere Grundtypen zu erstellen.
wie zb. einen der serverseitige Physicberechnung durchführt und somit die MasterPhysicNode erweitern soll.

Soweit so einfach, nur wenn ich jetzt eine zweite Klasse habe, die keine Physicberechung haben soll und somit von Node extended , jedoch den selben Netzwerkcode benutzt ergibt sich das Problem, das ich entweder vielen RedudantenCode habe, oder es irgetwie möglich sein muss, den Netzwerkcode in ein eigenen Objekt auszulagern, von dem dan ebenfalls extended wird (vom sinn her zumindest)

Aka: NetworkedPhysicNode extends NetworkNode,MasterPhysicNode

Das problem ist , das dieses in Java nicht möglich ist. Falls einer von euch einen guten Tip, Vorschlag oder Ansatz hat, wäre ich sehr dankbar.
 

fastjack

Top Contributor
Stichwort Schnittstellen:

Java:
public interface XYZ extends A, B, C, D ..., Z {...}
 

Marco13

Top Contributor
Ja, aber es ist ohnehin empfehlenswert, solche Dinge nicht über Vererbung sondern über Komposition zu lösen - also grob gesagt eigene Klassen zu machen, die den "Network" und den "Physics"-Teil enthalten, und dann Instanzen davon in den Network- den Physics- und den NetworkPhysicsNode zu packen.
 

fastjack

Top Contributor
Das ist richtig. Du kannst aber die Schnittstellenvererbung auch mit der Komposition verbinden. Die Schnittstellen enthalten die Signaturen, die Komposition übernimmt dann die Implementierungen.
 

dngfng

Aktives Mitglied
Was du machen willst nennt sich auch Multiple Inheritance. Dies ist in Java nicht möglich - diese geht seht wohl in C++.

Diese wurde in Java nicht gestattet da es Problem gibt wenn zwei oder Mehr der Eltern Klassen gleichnamige Methoden enthalten mit unterschiedlichen Implementierungen. Da es in diesen Fall nicht
klar ist welcher Code ausgeführt werden soll.

Java was designed without multiple inheritance. While some developers think of this as a flaw, it is actually true that the overall design of Java supports the solution of problems commonly solved with multiple inheritance in other ways. In particular, the singly rooted hierarchy (with Object as the ultimate ancestor of all classes) and Java interfaces solves most problems that are commonly solved using multiple inheritance in C++. (Pace University)
 

Empire Phoenix

Top Contributor
Hm also siehts doch nach redundanten code aus, (von wegen interfaces) naja was solls, wenns nicht besser geht kann man mir designtechnisch ja kaum vorwürfe machen :)
 
M

maki

Gast
Mein Problem: Ich will eine basisklasse erstellen, die die meisten zugriffe kapseln kann auf das unterliegende system.
Warum eine Basisklasse sowas kapseln soll ist mir ein Rätsel, denn bei Vererbung wird nicht mehr viel "gekapselt", sie stellt die stärkste Form der Abhängigkeit dar und sollte nicht für so etwas benutzt, oder besser missbraucht ;) werden.

Hm also siehts doch nach redundanten code aus, (von wegen interfaces) naja was solls, wenns nicht besser geht kann man mir designtechnisch ja kaum vorwürfe machen :)
"Wenn man nur einen Hammer hat..."

Komposition + Delegation, Redundanz ist keine Lösung ;)
 
Zuletzt bearbeitet von einem Moderator:
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
R ClientHTTPRequest - bei mehrfacher Ausführung? Allgemeine Java-Themen 2
Peterw73 Hilfe bei Java gesucht Allgemeine Java-Themen 3
N Java API für CardDav und CalDav gesucht Allgemeine Java-Themen 4
B OCR Library gesucht Allgemeine Java-Themen 6
V Javalehrer gesucht Allgemeine Java-Themen 2
K Java-Forum gesucht Allgemeine Java-Themen 12
O Best Practice Hilfe bei Algorithmus gesucht Allgemeine Java-Themen 10
A Hilfe gesucht Allgemeine Java-Themen 44
N Schulung zu Tomcat/JSP/Struts gesucht Allgemeine Java-Themen 0
E Gewollte Endlosschleife unterbrechen oder Alternative gesucht Allgemeine Java-Themen 2
S API gesucht Allgemeine Java-Themen 3
O Freies Tool zum Jar-File obfuscaten gesucht! Allgemeine Java-Themen 5
Londi DJ MP3 Lib gesucht Allgemeine Java-Themen 0
I Dringend nachhilfe in programmieren gesucht!!!!!!!! Allgemeine Java-Themen 1
I Dringend nachhilfe in programmieren in mannheim gesucht!!!!! Allgemeine Java-Themen 3
L Lib gesucht: Java-Objekte mit JSON Allgemeine Java-Themen 2
J Kalenderwecker gesucht Allgemeine Java-Themen 2
D Kuriose Geschichte -> Antwort gesucht Allgemeine Java-Themen 4
O Tag Cloud Algorithmus Idee gesucht Allgemeine Java-Themen 2
S Java XTools gesucht Allgemeine Java-Themen 2
N Boolsche Algebra via eval vereinfachen -> Ausmultiplizieren gesucht Allgemeine Java-Themen 15
E Nachhilfe in Java gesucht!!! Allgemeine Java-Themen 3
H Graph-Algorithmus gesucht Allgemeine Java-Themen 21
B Dringend Hilfe gesucht für Struktogramm Allgemeine Java-Themen 11
N Liste gesucht Allgemeine Java-Themen 2
Guybrush Threepwood Pattern gesucht: Punkt ohne Leerzeichen dahinter Allgemeine Java-Themen 3
B IRC-Library Gesucht Allgemeine Java-Themen 2
T Projektthema gesucht Allgemeine Java-Themen 2
c_sidi90 Aufgaben für Einstellungstest (Azubicasting) gesucht Allgemeine Java-Themen 10
M WebFramework für Userhandling gesucht Allgemeine Java-Themen 7
E Dezimalzahl -> Hexadezimalzahl [Lösungsweg gesucht] Allgemeine Java-Themen 2
M Funktion gesucht: Text vektorisieren Allgemeine Java-Themen 20
R Collections Datenstruktur gesucht Allgemeine Java-Themen 12
J Algorithmus gesucht (Stringtransformation) Allgemeine Java-Themen 4
P JFormattedTextField für durch Semikolon getrennte Integer-Werte gesucht / Regulärer Ausdruck Allgemeine Java-Themen 3
alex_fairytail IT-Kleinprojekt: Ideen gesucht! Allgemeine Java-Themen 18
B TypeOf oder ähnliches gesucht Allgemeine Java-Themen 3
A Bibliothek für NP-harte Zuordnung gesucht. Allgemeine Java-Themen 7
E Super erzwingen, konzept/pattern gesucht. Allgemeine Java-Themen 8
T Passende Listenstruktur gesucht Allgemeine Java-Themen 5
S Webstart: vollständige JNLP-Doku. gesucht Allgemeine Java-Themen 4
S Meinung zu Programmidee gesucht Allgemeine Java-Themen 9
Guybrush Threepwood Neuronale Netzwerke - Bibliothek gesucht Allgemeine Java-Themen 3
agentone Graphen-Lib gesucht Allgemeine Java-Themen 7
Ark Name für Funktion gesucht Allgemeine Java-Themen 5
F Spam-Mail-Programm gesucht Allgemeine Java-Themen 11
S JKL - Bibiliothek gesucht ? Allgemeine Java-Themen 9
hdi Beispiel für EDT Violations gesucht Allgemeine Java-Themen 4
J Open Source Projekt anbieten - Leitfaden gesucht Allgemeine Java-Themen 3
F Passende Struktur gesucht Allgemeine Java-Themen 6
A Regex gesucht Allgemeine Java-Themen 9
J Parser / Scanner / Tokenizer gesucht Allgemeine Java-Themen 3
V DecimalformatPattern gesucht Allgemeine Java-Themen 4
as182005 Bibliothek für Graph Visualisierung gesucht Allgemeine Java-Themen 3
H Framework empfehlung / gute Anfängerbeispiele gesucht Allgemeine Java-Themen 12
M Texteditor gesucht Allgemeine Java-Themen 3
B Effizienter Suchalgorithmus gesucht Allgemeine Java-Themen 10
D design gesucht - Angabe von zu ersetzenden substrings Allgemeine Java-Themen 2
P Java-Security-Aufgabe gesucht Allgemeine Java-Themen 2
J Listener für Ende eines Threads gesucht... Allgemeine Java-Themen 5
T Webseite (HTML) Parser gesucht Allgemeine Java-Themen 8
D klassenstruktur gesucht Allgemeine Java-Themen 17
N Datenstruktur für Netze gesucht Allgemeine Java-Themen 8
B Pattern gesucht, Programm Optionen, Casten vermeiden Allgemeine Java-Themen 3
S Verschlüsselungsbibliotheken gesucht Allgemeine Java-Themen 8
N Empfehlung für Java 1.5 Decompiler gesucht Allgemeine Java-Themen 2
D Banking Framework gesucht Allgemeine Java-Themen 5
G OOP Umsetzung gesucht Allgemeine Java-Themen 25
S Netzwerkdiagramm / Sequenzdiagramm - Ideen gesucht Allgemeine Java-Themen 2
S Stemming-Algorithmus gesucht (z.B. Porter) Allgemeine Java-Themen 2
J Bibliothek gesucht Ana_lysieren von wss. Referenzen Allgemeine Java-Themen 2
S VideoStreaming-Tool gesucht! Allgemeine Java-Themen 2
G Sehr gutes Java-Framework(Gui-Builder) auf XML-Basis gesucht Allgemeine Java-Themen 21
T Datenstruktur gesucht Allgemeine Java-Themen 18
D Report Engine gesucht Allgemeine Java-Themen 2
F Idee fuer Suchfeldmapping gesucht Allgemeine Java-Themen 10
C Pattern für Kommunikation gesucht Allgemeine Java-Themen 3
0 Rechenaufwändiger, kurzer Codeschnipsel gesucht! Allgemeine Java-Themen 17
E Countdownfunktion gesucht Allgemeine Java-Themen 52
S Koridinatensystem gesucht Allgemeine Java-Themen 4
M IRC Chat - Klasse oder Application gesucht Allgemeine Java-Themen 9
D gesucht Wörterbuch deutsch / englisch Allgemeine Java-Themen 4
N Denkanstösse zu Schnittmengensuche gesucht Allgemeine Java-Themen 9
M Schnell kleine Hilfe gesucht! Allgemeine Java-Themen 3
K Elegante Lösung zum Manipulieren von Collections gesucht Allgemeine Java-Themen 16
B Formel Interpreter gesucht Allgemeine Java-Themen 7
S Methode zum Zählen von Buchstaben in Strings gesucht Allgemeine Java-Themen 11
K Prozess-Visualisierung: Stichwörter gesucht Allgemeine Java-Themen 4
B Unicode für Kreuz gesucht Allgemeine Java-Themen 2
H Unicode Darstellung in Java, spezielles Zeichen gesucht Allgemeine Java-Themen 4
foobar Alternative zu JavaHelp gesucht Allgemeine Java-Themen 2
B Methode gesucht Allgemeine Java-Themen 3
H if - else if-else bessere Lösung gesucht Allgemeine Java-Themen 4
M Chat-Software gesucht Allgemeine Java-Themen 3
T Design-Tipp gesucht Allgemeine Java-Themen 2
G Shopsystem gesucht Allgemeine Java-Themen 2
M Java Klasse gesucht / Outlook Adressdaten auslesen Allgemeine Java-Themen 3
Ark Diagramm zur Java-Grammatik gesucht Allgemeine Java-Themen 2
M Jemannd mit 1.4/1.3/1.2 zum Testen gesucht. Allgemeine Java-Themen 15
foobar Obfuscator gesucht Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben