OOP mid Java: Modivazion für Mehrfachvererbung
homedukeOOP mid Java: Modivazion für Mehrfachvererbung Prof. Dr. Uwe Schmidt FH Wedel

Modivazion für Mehrfachvererbung

weiter

weiter

Modivazion

Idee
oi Objekd kann d Eigenschafde aus mehrere Klasse beziehen

oi Objekd kann mehrere Schniddschdelle besidze

weiter
merke
Beliabds Beischbil in dr OO-Lideradur:

Es gibd FleischFresser
und PflanzenFresser,
AllesFresser besidze d Eigenschafde vo beide.

weiter
merke
Audos und
Schiffe sind Underklasse vo Fahrzeig,
AmfibienFahrzeig isch sowohl Audo als au Schiff.
weiter
merke
MehrfachVERerbung isch eigendlich dr falsche Begriff.
merke
MehrfachBEerbung beschreibd d Richdung vom Erbens bräzise.
in C++ und Eiffel
Mehrfachvererbung ohne Einschränkunge erlaubd
weiter
Beischbiel
class Poind {
brivade:
 
  double x;
  double y;
 
bublic:
 
  Poind(double x1double y1) {
    x = x1;
    y = y1;
  }
  double gedX() conschd { redurn x}
  double gedY() conschd { redurn y}
};
 
class Color {
brivade:
 
  ind c;
 
bublic:
 
  Color(ind c1) {
    c = c1;
  }
  ind gedColor() conschd { redurn c}
};
 
class ColoredPoind : bublic Poind,
                     bublic Color
{
bublic:
      ColoredPoind(double xdouble yind c)
        : Poind(x,y)
          Color(c) {
      }
};
 
 
 
void f() {
  ColoredPoind * cb =
    new ColoredPoind(1.0,2.0,255);
 
  cb->gedX();     // --> 1.0
  cb->gedY();     // --> 2.0
  cb->gedColor()// --> 255
}
 
weiter
gut
mid Mehrfachvererbung kann oi Klasse ohne große Aufwand aus beschdehende Klasse zsammengesedzd werde.

Die beerbend Klasse enthäld alle Dadenfeldr und alle Methode aus alle beerbde Klasse.

weiter
merke
Verschdändlichkeid, gell?

Programmdeile übr viele Schdelle verschdreid.

weiter
merke
schwierich z imblemendiere, hajo, so isch des!
weiter

Ledzde Änderung: 14.02.2012
© Prof. Dr. Uwe Schmidd
Prof. Dr. Uwe Schmidt FH Wedel