Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Write out inheritance hierarchy and UML diagram for CampingSite and GroupSite cl

ID: 3694763 • Letter: W

Question

Write   out   inheritance   hierarchy   and   UML   diagram   for   CampingSite and   GroupSite classes   as   specified   in   2   and   3   below.
2. Write   a   program   CampingSite.java to   implement   a   CampingSite   class   for   camping  
site   reservation   system   with   the   following   components,
• Instance   variable:  
o campSite:   string   to   indicate   Site   name  
o dailyRate   :   daily   charge   for   the   site  
o days:   number   of   days   booked
• One   argument constructor:   takes   campSite,   calls   the   3-argument   constructor  
• 3-argument   constructor
• Other   standard   and   useful   methods   including   totalCharge   method
3. Write   a   subclass   GroupSite.java with   the   following,
• GroupSite   is   a   subclass   of   class   CampingSite
• Instance   variable:  
o surCharge:   amount   of   extra   cleaning   charge   for   group   site   per   day
• 4-argument   constructor  
• Other   standard   and   useful   methods
4. Write   a   program   SiteReservation.java to   test   the   CampingSite   and   GroupSite   classes
• Create   a   CampingSite   object   with   “A5   ”   as   camp   site   name.
• Use   set   methods   to   put   in   dailyRate:   $25,   and   days:   4  
• Create   another   CampingSite   object   with   “B6”,   dailyRate   of   $20   for   3   days
• Create   a   GroupSite   object   with   “G1”   with   dailyRate   =   $50,   days=   2,   surcharge=$20
• Put   all   three   sites   in   an   array.
• Polymorphically   print   out   the   site   information   including   total   charge.  

Sample   output:  
Site:   A5 Daily   Rate:   $25.00   Number   of   Days:   4      
Total   Charge:   $100.00
Site:   B6 Daily   Rate:   $20.00 Number   of   Days:   3      
Total   Charge:   $60
Site:   G1 Daily   Rate:   $50.00 Number   of   Days:   2      
Surcharge   per   day:   $20
Total   Charge:   $140
Grand   Total   for   these   reservations:   $300

Explanation / Answer

class CampingSite{ String campSite; double dailyRate; int days; public CampingSite(String campSite, double dailyRate, int days) { this.campSite = campSite; this.dailyRate = dailyRate; this.days = days; } public CampingSite(String campSite) { new CampingSite(campSite, 0.0, 0); } public double totalCharge(){ return dailyRate*days; } public String getCampSite() { return campSite; } public void setCampSite(String campSite) { this.campSite = campSite; } public double getDailyRate() { return dailyRate; } public void setDailyRate(double dailyRate) { this.dailyRate = dailyRate; } public int getDays() { return days; } public void setDays(int days) { this.days = days; } @Override public String toString() { return "Site: "+campSite+" Daily Rate: $"+dailyRate+" Number of Days: "+days+" " + "Total Charge: $"+totalCharge()+" "; } } class GroupSite extends CampingSite{ double surCharge; public GroupSite(double surCharge, String campSite, double dailyRate, int days) { super(campSite, dailyRate, days); this.surCharge = surCharge; } public double getSurCharge() { return surCharge; } public void setSurCharge(double surCharge) { this.surCharge = surCharge; } } class SiteReservation{ public static void main(String[] args) { CampingSite A5 = new CampingSite("A5"); A5.setDailyRate(25); A5.setDays(4); CampingSite B6 = new CampingSite("B6",20,3); GroupSite G1 = new GroupSite(20,"G1",50,2); Object arr[] = new Object[3]; arr[0] = A5; arr[1] = B6; arr[2] = G1; for(Object o : arr){ System.out.println(o.toString()); } } }

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote