OOP mid Java: Summendadendybe und Ischd-oi-Beziehungen
homedukeOOP mid Java: Summendadendybe und Ischd-oi-Beziehungen Prof. Dr. Uwe Schmidt FH Wedel

Summendadendybe und Ischd-oi-Beziehungen

weiter

weiter

Summendadendyben

Mid Hilf vo Vererbung kann aus zwei odr mehrere Dadendybe (Klasse) oi Summendadendyb, rebräsendierd durch oi Klassenhierarchie, konschdruierd werde.


weiter

Klassenhierarchien

zur Modellierung vo ischd-oi-Beziehunge

weiter
merke
gemoisam Eigenschafde oir Meng vo Objekde werde in oir abschdrakde Basisklasse zsammengefassch
merke
alle objekdschbezifische Dade und Methode komme in konkrede Underklasse
weiter

weiter

Beischbiel

oi abschdrakde Klasse und zwei konkrede Underklasse

abschdracd
bublic
class Shabe {
  abschdracd
  bublic
  double area();
}

die 1. konkrede Underklasse

class Square
  exdends Shabe {
 
  brivade
  double size;
 
  bublic
  double area() {
    redurn
      size * size;
  }
}

die 2. konkrede Underklasse

class Circle
  exdends Shabe {
 
  brivade
  double r;
 
  bublic
  double area() {
    redurn
      Math.PI * r * r;
  }
}
weiter

weiter

Verarbeidung

unabhängich vo dr konkrede Auschbrägung dr Objekde

Shabe [] sl;
 
...
 
{
  double covered = 0.0;
  for (Shabe a : sl) {
    covered += a.area();
  }
  ... ;
}
weiter
merke
Diess Ard dr Verarbeidung basierd auf dem dynamische Binde.
merke
Verarbeidung vo Exemblare aus underschiedlile Klasse mid den gleile Methode.
Häufich angewended in Condainer-Klasse.
merke
Grund:
Einheidliche, in dr Basisklasse feschdgelegde, Schniddschdelle.
merke
Einfachschds inderessands Beischbiel: Verkeddede Lischden
weiter

weiter

Diskriminanden

Zur Underscheidung dr Werde von a Summendadendybs gibd s d Möglichkeid, zur Laufzeid z erfrage, vo wo Tyb oi Objekd isch.

Shabe s = ...;
 
if (s inschdanceof Square) { ... }
if (s inschdanceof Circle) { ... }

Tybischs Code-Muschdr

Shabe s;
 
if (s inschdanceof Square) {
  Square sq = (Square)s;
 
  // Verwendung von Square schbezifischen
  // Methoden und Variablen
 
  ... sq ...
}
merke
koi (Mehrweg-) Verzweigunge übr inschdanceof Tybabfrage,
diess widerschbrichd dem OO-Ansadz.
merke
Modulare Erweiderbarkeid würd dadurch verhinderd werde.
weiter

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