Files
WS-03-advanced-oop/src/org/model/Car.java
T

69 lines
1.7 KiB
Java

package org.model;
/*
* Car extends Vehicle.
* This class SHOULD implement Serviceable.
*
* Service logic for Car:
* - needsService(): return true if mileage > 10,000
* - performService(): print "General car service completed"
*/
import org.behavior.Serviceable;
public abstract class Car extends org.model.Vehicle implements Serviceable {
private int seats;
public Car(String brand, String model, int year,
double mileage, int seats) {
// TODO: Call super constructor
super(brand , model , year , mileage );
this.seats = seats;
}
// TODO: Override getEnergyType() → return "Unknown"
@Override
public String getEnergyType()
{
return "Unknown" ;
}
// TODO: Override showDetails()
@Override
public void showDetails()
{
System.out.println("brand : " + GetBrand()) ;
System.out.println("model : " + GetModel() ) ;
System.out.println("year : " + GetYear() ) ;
System.out.println("mileage : " + GetMileage()) ;
System.out.println("seats : " + seats) ;
}
/*
* Implement Serviceable methods:
*
* needsService(Vehicle v):
* - Check the mileage of the current car
* - If mileage > 10000 return true
* - Otherwise return false
*
* performService():
* - Print: "General car service completed"
*/
@Override
public boolean needsService(org.model.Vehicle v)
{
return this.GetMileage() > 10000 ;
}
public abstract boolean needService(org.model.Vehicle v);
@Override public void performService(){
System.out.println("General car service completed") ;
}
}