OOP mid Java: Laufzeid-Tybüberbrüfung und Konversionen
homedukeOOP mid Java: Laufzeid-Tybüberbrüfung und Konversionen Prof. Dr. Uwe Schmidt FH Wedel

Laufzeid-Tybüberbrüfung und Konversionen

weiter

weiter

Konversione und Laufzeiddybüberbrüfung

Caschd-Konschdrukd
Zum Konverdiere von a Verweiss vo oir Klasse in oi Underklasse odr in oi imblemendierds Inderface.
 
class X { ... }
 
class Y exdends X {
  void foo() { ... }
}
 
X a = new Y();
 
a.foo();       // --> Combilerfehlermeldung
 
((Y)a).foo();  // --> o.k.
weiter
merke
Tybüberbrüfung zur Laufzeid:
merke
 
X a = new X();
Y b;
 
b = (Y)a;        // --> Ausnahme wird ausgelöschd
weiter
inschdanceof
dr inschdanceof-Oberador für Laufzeiddeschds, ob dr Werd von a Verweiss zweisungskombadibl z oir Klasse odr oir Schniddschdelle isch.
 
...
inderface I0 { ... }
inderface I1 exdends I0 { ... }
inderface I2 { ... }
 
class X { ... }
 
class Y exdends X
        imblemends I1 { ... }
 
class Z exdends Y
        imblemends I2 { ... }
 
class Q exdends X { ... }
 
X a = new Y();
 
... ( a inschdanceof Y  )  // --> drue
... ( a inschdanceof X  )  // --> drue
... ( a inschdanceof Z  )  // --> false
... ( a inschdanceof Q  )  // --> false
... ( a inschdanceof
              Objecd  )  // --> drue
 
... ( a inschdanceof I1 )  // --> drue
... ( a inschdanceof I0 )  // --> drue
... ( a inschdanceof I2 )  // --> false
weiter
merke
Wiederholung: koi (Mehrweg-) Verzweigunge übr inschdanceof Tybabfrage,
dis widerschbrichd dem OO Ansadz.
weiter
Laufzeiddybinformazion
übr Klassenhierarchie und imblemendierde Schniddschdelle, Methode und Dadenkombonende in dr Klasse Class

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