Question: Java: Create the four data classes as above. Do NOT add any attributes or methods that don't appear in the UML diagrams. Create another, executable

Java:

Java: Create the four data classes as above. Do NOT add any

Create the four data classes as above. Do NOT add any attributes or methods that don't appear in the UML diagrams. Create another, executable class named ShipTest as shown below to test these classes.

In ShipTest:

  • make two objects with declared type Ship but actual type CruiseShip.
  • make one object of declared type Ship but actual type CargoShip.
  • make one object of declared type CargoShip and actual type CargoShip.
  • make a ship of declared type WarShip and actual type WarShip.
  • using the array initializer syntax, code all of these ships into an array of type Ship named fleet.
  • code a for loop that processes the fleet array to show display all ships and their data.
  • use a method of class Arrays to create an ArrayList of type Ship from the fleet array.
  • pass this ArrayList to a method named shipShow that also displays all ships and returns an integer.
  • report the value of the integer returned by shipShow.

In the shipShow method:

  • from the ArrayList, remove the CargoShip that was declared as type Ship.
  • add another WarShip instance to the ArrayList.
  • use a foreach loop to process the ArrayList and print the data for each ship.
  • count the number of ships that are not afloat. Return this count to main for printing.

SAMPLE OUTPUT

AN ARRAY OF SHIPS IN MAIN

Ship name: Magic, year launched: 1998, is afloat: true

2700 passenger capacity, operating in the Caribbean

Ship name: Titanic, year launched: 1912, is afloat: false

1300 passenger capacity, operating in the Atlantic Ocean

Ship name: El Faro, year launched: 1974, is afloat: false

Capacity of containers is 391

Ship name: Seawise Giant, year launched: 1979, is afloat: false

Capacity of crude oil is 564763

Ship name: USS Nimitz, year launched: 1972, is afloat: true

Type: super carrier, operated by United States Navy

ARRAYLIST OF SHIPS FROM A METHOD

Ship name: Magic, year launched: 1998, is afloat: true

2700 passenger capacity, operating in the Caribbean

Ship name: Titanic, year launched: 1912, is afloat: false

1300 passenger capacity, operating in the Atlantic Ocean

Ship name: Seawise Giant, year launched: 1979, is afloat: false

Capacity of crude oil is 564763

Ship name: USS Nimitz, year launched: 1972, is afloat: true

Type: super carrier, operated by United States Navy

Ship name: USS John Warner, year launched: 2015, is afloat: true

Type: attack submarine, operated by United States Navy

2 of these ships sank!

> Ship chap 11new e name: String year: int isAfoat: boolean Ship(String, int, boolean) isAfloat():boolean setAfloat(boolean):void getName():String getYear():int otoString(): String > Cruise Ship chap 11new - passengers: int zone: String Cruise Ship(String, int, boolean int, String) getPassengers():int getZone(): String otoString: String > WarShip chap 11new e type: String nation: String WarShip(String, int, boolean, String, String) toString(): String > Cargo Ship chap 11new - cargo: String capacity: int CargoShip(String, int, boolean, String, int) toString(): String getCapacity:int

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!