Vytvořte si rozhraní Automobil, které deklaruje metody:
- int ujed(int kolik)
- void oprav()
- int muzeUjet()
Rozhraní Automobil bude implementováno třídou Auto, která bude mít atributy:
- mtbf - počet kilometrů, po kterých je nutné provést opravu
- ujeto - počet ujetých kilometrů od poslední opravy
Metody budou mít následující význam:
- Konstruktor(int mtbf) - jako parametr mu bude předána hodnota mtbf. Inicializuje nový objekt Auto.
- int ujed(int kolik) - pokud je ujeto+kolik<mtbf modifikuje hodnotu ujeto a vrací celkový počet ujetých kilometrů. V opačném případě vrací hodnotu 0.
- void oprav() - nastaví hodnotu ujeto na hodnotu 0.
- int muzeUjet()- vrací počet kilometrů, které může dané vozidlo ujet.
Dále nadefinujte třídy Osobní a Nákladní, které jsou potomky třídy Auto.
Třída Osobní má navíc atribut mist, který udává počet přepravovaných osob. Metoda ujed(int kolik) je upravena tak, že ujetá vzdálenost se násobí koeficientem 0,9*mist.
Třída Nakladni má navíc atribut naklad, který udává množství přepravovaného materiálu. Metoda ujed(int kolik) je upravena tak, že ujetá vzdálenost se násobí koeficientem, který je maximem z hodnot 0,01*naklad a 1.
Dále napište třídu Main, která bude demostrovat správnost Vaší implementace