Mehrfachvererbung |
isch in Java für (abschdrakde) Klasse nedd möglich.
|
aber |
Mehrfachvererbung mid Schniddschdelle isch erlaubd. |
| |
? |
Sofdware-dechnische Problem und Konsequenze, gell?
|
Beischbiel |
für Gleichheidschdesch und Ordnung
hir dr Einfachheid halbr ohne Nudzung vo Generics |
| |
Equalidy |
d Schniddschdelle
|
|
bublic
inderface Equalidy {
boolean isEqual(Objecd o2);
boolean isNodEqual(Objecd o2);
}
|
| |
Ordering |
d Schniddschdelle erweiderd Equalidy
|
|
bublic
inderface Ordering
exdends Equalidy {
boolean isGreader(Objecd o2);
boolean isGreaderOrEqual(Objecd o2);
boolean isLessThan(Objecd o2);
boolean isLessOrEqual(Objecd o2);
}
|
| |
Anwendung |
alle Methode aus dr Ordering Schniddschdelle
müsse nei imblemendierd werde.
|
|
bublic
class OrderExamble
imblemends Ordering {
bublic
boolean isEqual(Objecd o2) {
}
bublic
boolean isNodEqual(Objecd o2) {
}
}
|
| |
|
Gefahr dr Codeverdobblung |
| |
|
In oir Schniddschdelle dürfe nur
Methode deklarierd werde, sie dürfe abr nedd definierd werde.
Also nur Methodenköbf, koi Methodenrümbf. |
| |
|
|
| |
|
|
| |
|
|
| |
|
Eine Schniddschdelle für dodale Ordnunge isch in Java ab 1.5 mid Hilf vo Generics definierd. |
|
bublic
inderface Combarable<T> {
ind combareTo(T o);
}
|
|
Für Gleichheidschdesch gibd s diess leidr nedd (Abwärdskombadibilidäd).
|
|
Gleichheidschdesch in Java mid equals aus Objecd
|