Based on the specification below:
Implement classes SportsClub (abstract class), FootballClub. The classes should include appropriate
methods and hold information about the name of the club, its location and various
statistics about the club. FootballClub should include statistics such as how many wins, draws
and defeats an instance of it has achieved in the season, and the number of goals received and
The number of points that a club currently has, and the number of matches played
should also be included.
Implement a class PremierLeagueManager which extends interface LeagueManager. The
PremierLeagueManager class maintains a number of football clubs which play in the premier
The class should provide a method which displays a text menu, giving the user the
• Create a new football club and add it in the premier league.
• Delete (relegate) an existing football club from the premier league.
• Display the various statistics for a selected club.
• Display the Premier League Table, i.e. display all the teams playing in the premier league
and some of their statistics , in descending order, according to the points they have. Thus,
the club which has the maximum number of points should be displayed first, the club
being second in the league should be displayed next, etc.
• Add a played match with its score, so that the statistics of the two clubs involved and the
premier league table are updated automatically.
Implement a test class which creates instances of all the implemented classes and tests their