OOP LAB 09
Name: Aditya Sharma Roll Number: F018
Sem/Batch: Sem 8/F1 Date: 11/04/2025
abstract class Vehicle {
protected String brand;
protected String model;
protected int year;
public Vehicle(String brand, String model, int year) {
this.brand = brand;
this.model = model;
this.year = year;
}
public abstract void displayInfo();
}
interface FuelEfficiency {
double calculateFuelEfficiency();
}
class Car extends Vehicle implements FuelEfficiency {
private double fuelConsumed;
private double distanceTraveled;
public Car(String brand, String model, int year, double fuelConsumed, double
distanceTraveled) {
super(brand, model, year);
this.fuelConsumed = fuelConsumed;
this.distanceTraveled = distanceTraveled;
}
@Override
public void displayInfo() {
System.out.println("Car Brand: " + brand);
System.out.println("Model: " + model);
System.out.println("Year: " + year);
}
@Override
public double calculateFuelEfficiency() {
return distanceTraveled / fuelConsumed;
}
}
// Concrete Class Bike
class Bike extends Vehicle implements FuelEfficiency {
private double fuelConsumed; // in liters
private double distanceTraveled; // in kilometers
// Constructor to initialize bike details
public Bike(String brand, String model, int year, double fuelConsumed,
double distanceTraveled) {
super(brand, model, year);
this.fuelConsumed = fuelConsumed;
this.distanceTraveled = distanceTraveled;
}
@Override
public void displayInfo() {
System.out.println("Bike Brand: " + brand);
System.out.println("Model: " + model);
System.out.println("Year: " + year);
}
@Override
public double calculateFuelEfficiency() {
return distanceTraveled / fuelConsumed;
}
}
// Main Class to Test the System
class VehicleManagementSystem {
public static void main(String[] args) {
// Create a Car and a Bike object
Car car = new Car("Toyota", "Camry", 2020, 50, 600);
Bike bike = new Bike("Yamaha", "FZ", 2018, 10, 250);
// Display car information
car.displayInfo();
System.out.println("Fuel Efficiency (Car): " +
car.calculateFuelEfficiency() + " km/l\n");
// Display bike information
bike.displayInfo();
System.out.println("Fuel Efficiency (Bike): " +
bike.calculateFuelEfficiency() + " km/l");
}
}