a Create the Class Diagram for the Base Class Player In oth
a.) Create the Class Diagram for the Base Class – Player In other words. Design a class named Player that holds a player number and name for a sports team participant. Include methods to get and set values for each data field.
b.) Then create the Derived Class Diagram for BasketballPlayer and BasebasePlayer. In other words. Design two classes named BaseballPlayer and BasketballPlayer that are child classes of Player. Include a new data field in each class for the player’s position. Include an additional field in the BaseballPlayer class for batting average. Include a new field in the BasketballPlayer class for free-throw percentage. Add appropriate methods in the child classes to to get and set the new fields.
c.) Pseudo code for all classes (Player, BasketballPlayer and BasebasePlayer) and main. Main should create the objects, set and get properties. In other words. Design an application that instantiates an object of each class and demonstrates all the methods.
Solution
import java.util.*;
class Player
{
String playerNo, sportsName;
//returns the player number
String getPlayerNo()
{
return playerNo;
}
//returns the sports name
String getSportsName()
{
return sportsName;
}
//sets the player number
void setPlayerNo(String pn)
{
playerNo = pn;
}
//sets the sports name
void setSportsName(String sn)
{
sportsName = sn;
}
}
//derived from player class
class BaseballPlayer extends Player
{
int position;
float battingAverage;
//returns the position
int getPosition()
{
return position;
}
//returns the batting average
float getBattingAverage()
{
return battingAverage;
}
//Sets the postion
void setPosition(int p)
{
position = p;
}
//sets the battring average
void setBattingAverage(float ba)
{
battingAverage = ba;
}
}
//derived from player class
class BasketballPlayer extends Player
{
int position;
float freeThrowPercentage;
//returns the postion
int getPosition()
{
return position;
}
//returns the freethrow percentage
float getfreeThrowPercentage()
{
return freeThrowPercentage;
}
//sets the position
void setPosition(int p)
{
position = p;
}
//sets the free throw percentage
void setfreeThrowPercentage(float ft)
{
freeThrowPercentage = ft;
}
}
//Driver class
public class PlayDemo
{
public static void main(String ss[])
{
//creates an object of base ball player
BaseballPlayer bp = new BaseballPlayer();
//Creates an object of scanner class to accept data
Scanner sc = new Scanner(System.in);
System.out.println(\"Enter Player Number: \");
String plno = sc.nextLine();
bp.setPlayerNo(plno);
System.out.println(\"Enter Sports Name: \");
plno = sc.nextLine();
bp.setSportsName(plno);
System.out.println(\"Enter Position of Player: \");
int po = sc.nextInt();
bp.setPosition(po);
System.out.println(\"Enter Bating Average: \");
float ba = sc.nextFloat();
bp.setBattingAverage(ba);
BasketballPlayer bs = new BasketballPlayer();
sc.nextLine();
System.out.println(\"Enter Player Number: \");
plno = sc.nextLine();
bs.setPlayerNo(plno);
System.out.println(\"Enter Sports Name: \");
plno = sc.nextLine();
bs.setSportsName(plno);
System.out.println(\"Enter Position of Player: \");
po = sc.nextInt();
bs.setPosition(po);
System.out.println(\"Enter Free Throw Percentage: \");
ba = sc.nextFloat();
bs.setfreeThrowPercentage(ba);
System.out.println(\"Player Number: \" + bp.getPlayerNo());
System.out.println(\"Sports Name: \" + bp.getSportsName());
System.out.println(\"Position of Player: \" + bp.getPosition());
System.out.println(\"Bating Average: \" + bp.getBattingAverage());
System.out.println(\"Player Number: \" + bs.getPlayerNo());
System.out.println(\"Sports Name: \" + bs.getSportsName());
System.out.println(\"Position of Player: \" + bs.getPosition());
System.out.println(\"Free Throw Percentage: \" + bs.getfreeThrowPercentage());
}
}
output:
Enter Player Number:
123
Enter Sports Name:
base
Enter Position of Player:
4
Enter Bating Average:
56
Enter Player Number:
456
Enter Sports Name:
basket
Enter Position of Player:
2
Enter Free Throw Percentage:
89
Player Number: 123
Sports Name: base
Position of Player: 4
Bating Average: 56.0
Player Number: 456
Sports Name: basket
Position of Player: 2
Free Throw Percentage: 89.0


