Wieso keine Mehrfachvererbung? polymorphie?

Status
Nicht offen für weitere Antworten.
R

Roar

Gast
hallo,
wieso gibt es in java keine mehrfachvererbung? ich möchte dass meine klasse von JFrame und von einer slebstgeschrieben anderen klasse ableitet. wieso geht das nicht? mennö..
und wie funktinoeirt polymorphie? verstanden hab ich das jetzt irgendwie schon aber wie realisiere ich das konkret mit einer klasse?

danke
gruß
Roar
 
B

Beni

Gast
Soviel ich weiss wurde das so gemacht, weil es einfacher ist. Wenn du von zwei Klassen erbst, und beide haben die Methode "hallo()", welche wird jetzt in der Unterklasse aufgerufen? (Naja, die Superkonstrukte aus c++ kennt man ja ...bzw. ihre Querverbindungen, gegen die Swing geradezu einfach ist :? )

Mit den inneren Klassen kannst du aber was ähnliches erreichen:
Code:
public class Out extends JFrame{
  public class In extends MyCoolClass{
  }
}
In kann jetzt sowohl auf JFrame als auch auf MyCoolClass zugreiffen.
Ist aber nur ein Hack...

Wenn ich mein theoretisches Wissen zusammenklaube (das dem praktischen hinterherhinkt), hat Polymorphismus zwei Eigenschaften:
- Wo eine Klasse X erlaubt ist, ist auch jede Klasse Y extends X erlaubt.
- Der Aufruf einer Methode ist nicht vom Typ der Variable, sondern vom Typ der Referenz abhängig. Also wenn es in X und in Y eine Methode "hallo()" gibt, dann wird die hallo-Methode von Y aufgerufen.

Code:
Y y = new Y();
X x = y; // funktioniert
x.hallo(); // ruft das hallo von y auf

Und umsetzen... einfach schreiben 8) . Theorie ist doch langweilig.

mfg Beni
 
R

Roar

Gast
achso versteh schon.
nagut dann lass ich das mit dem ableiten von JFrame halt :? .
danke
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen

Neue Themen


Oben