You are required to develop an Athlete’s Sports Application in Java to manage different types of Competitors. These Competitors consist of Runners and Triathlon Athletes and your application must be able to deal with both types in a generic manner. The Application should offer the following options to the user as seen in the Screenshot below. See image.

In relation to the design of your application, the following is the class hierarchy, some of which is supplied and you are required to implement the necessary features, others you need to implement from scratch:

  • class Athlete is an abstract class, which you will extend in the form of a Runner class and a TriAthlete class
  • the Runner class should
    • extend the Athlete class
    • implement the RunnerIface interface (supplied) & subsequently it’s methods
    • add a distance field to hold the distance ‘run’ by a Runner
    • supply a default constructor & a constructor which takes parameters
    • override any methods which you deem necessary.
  • the TriAthlete class should
    • extend the Athlete class
    • implement the RunnerIface, the SwimmerIface and the CyclerIface interfaces (supplied) & subsequently it’s methods
    • add a swimDistance, cycleDistance and runDistance field to hold the respective distances ‘swam’ ,’cycled’ and ‘ran’ by a TriAthlete
    • supply a default constructor & a constructor which takes parameters
    • override any methods which you deem necessary.
  • the SportsApp program class should
    • implement the following methods
    • public void registerAthlete(Athlete[] team)
    • public void listAthletes(Athlete[] team)
    • public void calcTotalDistance(Athlete[] team)
    • public void findAthlete(Athlete[] team)
    • public static void main(String[] args)

You are asked to implement the Athlete’s Sports Application Version 1.0, then zip the project and upload to moodle by ….(TBC)

Academic Honesty!
It is not our intention to break the school's academic policy. Posted solutions are meant to be used as a reference and should not be submitted as is. We are not held liable for any misuse of the solutions. Please see the frequently asked questions page for further questions and inquiries.
Kindly complete the form. Please provide a valid email address and we will get back to you within 24 hours. Payment is through PayPal, Buy me a Coffee or Cryptocurrency. We are a nonprofit organization however we need funds to keep this organization operating and to be able to complete our research and development projects.