rendered paste bodyimport java.util.*;
class BoatHireCompany {
private ArrayList <Boat> Boat;
private int numBoat;
private int maxBoat;
private ArrayList <PedalBoat> PedalBoat;
private int numPedalBoat;
private int maxPedalBoat;
private ArrayList <RowingBoat> RowingBoat;
private int numRowingBoat;
private int maxRowingBoat;
private String BoatHireCompanyName;
public BoatHireCompany (String name, int num) {
BoatHireCompanyName = name;
numBoat = 0;
maxBoat = num;
numPedalBoat = 0;
maxPedalBoat = num;
numRowingBoat = 0;
maxRowingBoat = num;
Boat = new ArrayList <Boat> (maxBoat);
PedalBoat = new ArrayList <PedalBoat> (maxPedalBoat);
RowingBoat = new ArrayList <RowingBoat> (maxRowingBoat);
}
public boolean addBoat(Boat newBoat) {
if (numBoat == maxBoat) {
return false;
}
else {
Boat.add(newBoat);
numBoat++;
return true;
}
}
public boolean addPedalBoat (PedalBoat newPedalBoat) {
if (numPedalBoat == maxPedalBoat) {
return false;
}
else {
PedalBoat.add(newPedalBoat);
numPedalBoat++;
return true;
}
}
public boolean addRowingBoat (RowingBoat newRowingBoat ) {
if (numRowingBoat == maxRowingBoat) {
return false;
}
else {
RowingBoat.add(newRowingBoat);
numRowingBoat++;
return true;
}
}
public void displayBoatDetails() {
System.out.println("\nCompany Name : " + BoatHireCompanyName);
for (int i = 0; i <numBoat; i++) {
System.out.println("\nCompany NameDetails : " + Boat.get(i).toString());
}
}
public void displayPedalBoatDetails() {
for (int i = 0; i <numPedalBoat; i++) {
System.out.println("\nPedal Boat Details : " + PedalBoat.get(i).toString());
}
}
public void displayRowingBoatDetails() {
for (int i = 0; i <numRowingBoat; i++) {
System.out.println("\nRowing Boat Details : " + RowingBoat.get(i).toString());
}
}
public Boat findBoat(String BoatID) {
for (int i = 0; i < numBoat; i++) {
Boat BID = Boat.get(i);
if (BID.getBoatID().equalsIgnoreCase(BoatID))
return BID;
}
return null;
}
}
class BoatHireCompanyTest {
public static void main(String[] args) {
Boat B23232323 = new Boat("B23232323", "Pedal Boat", "Yes", "James Robinson", "1.00pm", "3.00pm", "No", 8.00);
PedalBoat P2323232 = new PedalBoat("P2323232", "white");
RowingBoat R2323232 = new RowingBoat("R2323232", "Titanic");
BoatHireCompany OctagonBoatHire = new BoatHireCompany ("Octagon Boat Hire ", 5);
OctagonBoatHire.addBoat (new Boat("PB202020", "Pedal Boat", "Yes", "David Bentley", "2.00 pm", "3.00 pm", "No", 16.00));
OctagonBoatHire.addBoat (new Boat("PB200000", "Pedal Boat", "Yes", "David Dunn", "6.00 pm", "9.00 pm", "No", 24.00));
OctagonBoatHire.addPedalBoat (new PedalBoat("PB20000", "Red"));
OctagonBoatHire.addRowingBoat (new RowingBoat("RB20000", "Dragon"));
OctagonBoatHire.addBoat(B23232323);
OctagonBoatHire.addPedalBoat(P2323232);
OctagonBoatHire.addRowingBoat(R2323232);
OctagonBoatHire.displayBoatDetails();
OctagonBoatHire.displayPedalBoatDetails();
OctagonBoatHire.displayRowingBoatDetails();
Boat foundBoat = OctagonBoatHire.findBoat("PB202020");
if (foundBoat !=null)
System.out.println("\nBoat Found " + foundBoat.toString());
else
System.out.println("\nBoat Not Found");
}
}