Java Source File
Download
public class Daladala {
private String plateNumber;
private String routeName;
private int capacity;
private int currentPassengers;
public Daladala(String plateNumber, String routeName, int capacity) {
this.plateNumber = plateNumber;
this.routeName = routeName;
this.capacity = capacity;
this.currentPassengers = 0;
}
public String getPlateNumber() {
return plateNumber;
}
public void setPlateNumber(String plateNumber) {
this.plateNumber = plateNumber;
}
public String getRouteName() {
return routeName;
}
public void setRouteName(String routeName) {
this.routeName = routeName;
}
public int getCapacity() {
return capacity;
}
public void setCapacity(int capacity) {
this.capacity = capacity;
}
public int getCurrentPassengers() {
return currentPassengers;
}
public void setCurrentPassengers(int currentPassengers) {
this.currentPassengers = currentPassengers;
}
// boardPassengers(int count) adds passengers only if it does not exceed capacity, and returns true or false.
public boolean boardPassengers(int count) {
if (currentPassengers + count <= capacity) {
currentPassengers += count;
return true;
} else {
System.out.println("Error: Exceeds capacity.");
return false;
}
}
// alightPassengers(int count) removes passengers if that many are currently on board.
public boolean alightPassengers(int count) {
if (count <= currentPassengers) {
currentPassengers -= count;
return true;
} else {
System.out.println("Error: Not enough passengers to alight.");
return false;
}
}
// In main(), create two DalaDala objects, perform boarding and alighting operations, and display the status using getters.
public static void main(String[] args) {
Daladala dala1 = new Daladala("T123ABC", "Downtown to Uptown", 30);
Daladala dala2 = new Daladala("T456DEF", "Eastside to Westside", 20);
// Boarding passengers
dala1.boardPassengers(25);
dala2.boardPassengers(15);
// Display status
System.out.println("DalaDala 1 - Plate: " + dala1.getPlateNumber() + ", Route: " + dala1.getRouteName() + ", Current Passengers: " + dala1.getCurrentPassengers());
System.out.println("DalaDala 2 - Plate: " + dala2.getPlateNumber() + ", Route: " + dala2.getRouteName() + ", Current Passengers: " + dala2.getCurrentPassengers());
// Alighting passengers
dala1.alightPassengers(10);
dala2.alightPassengers(5);
// Display status again
System.out.println("After alighting:");
System.out.println("DalaDala 1 - Current Passengers: " + dala1.getCurrentPassengers());
System.out.println("DalaDala 2 - Current Passengers: " + dala2.getCurrentPassengers());
}
}