# Ähnliche Wrapperklassen + DB-Tabellen



## Timo90 (11. Aug 2014)

Hallo,

mein vereinfachtes Problem ist, dass ich zwei sehr ähnliche Tabellen "auto" und "motorrad" habe. 

Gemeinsame Attribute: id, marke, modellbezeichnung, bj, preis,...
Unterschiedliche Attribute: bool rennstrecke (Motorrad), bool Cabrio (Auto), ...

Nun habe ich eine Wrapper-Oberklasse "fahrzeuge" welche get/setter für die gemeinsamen Attribute deklariert.

Die DB-Methode updatePreis(double preis) existiert nun in beiden Unterklassen, der einzige Unterschied ist, dass der SQL-Befehl entweder "auto" oder "motorrad" enthält.
Wäre es möglich diese Methode in der Oberklasse zu definieren und mit Hilfe von Stringverkettung und Methode fahrzeuge.getTablename() (gibt motorrad/auto zurück) den richtigen SQL-Befehl zu bilden oder ist das unsauber?


Danke für eure Hilfe!!!


----------



## Joose (11. Aug 2014)

Unsauber finde ich.

Ich finde sogar das du eine Tabelle zuwenig hast.
Tabellen: Fahrzeuge (für gemeinsame Attribute), Autos (Auto spezifische Attribute), Motorraeder (Bike spezifische Attribute)

Klassen analog zu den Tabellen. Auto und Motorrad leiten von Fahrzeug ab.

Vorteil: Du kannst nun in der Klasse Fahrzeug die SQL Statements für die Tabelle Fahrzeuge implementieren und die Klassen Auto bzw. Motorrad arbeiten nur noch mit ihren spezifischen Tabellen.


----------

