Daniel Thoma: EventOutObserver

Beitrag lesen

Hallo Jürgen

Tja, wenn ich mal weg bin läuft hier mal wieder nichts ;-)

Also was ist eine abstrakte klasse?
Beispiel aus RL:
Ein Vogel.
Ein Vogel hat zwar gewisse eigenschaften (Flügel, Schnabel) und Methoden (fliegen) aber es
gibt eigendlich keinen VOGEL es gibt enten, spatzen aber keinen Vogel. Es ist eine Verallgemeinerung
Eben eine ABSTRAKTE Classe.

Abstrakte klassen können nicht direkt verwendet werden, nur indem sie andere Klassen erben.
Sie können abstrakte methoden enthalden. Diese müssen von erbenden Klassen dann implementiert werden.

Beispiel:

***vogel.java***
public abstract class vogel
{
   public void fliegen()
   {
      ...
   }

public abstract void schwimmen() throws VogelException;
}

***spatz.java***
public class spatz extends vogel
{
   public void schwimmen() throws absaufexception
   {
      throw new absaufexception()
   }
}

***ente.java***
public class ente extends vogel
{
   public void schwimmen() throws VogelException
   {
      system.schwimm()
   }
}

Fazit: Wenn du eine abstrakte Klasse verwenden willst mußt du sie erben und alle abstrakten methoden implementieren.

Tschüs

Daniel