Write in JAVA ONLY Write a class encapsulating a restaurantw

Write in JAVA ONLY!

Write a class encapsulating a restaurant,which inherits from Store.

A restaurant has the following additional attributes: how many people are served every year and the average price per person.

code the constructor, accessors, mutators, toString and equals method of the new subclass; also code a method returning the average taxes per year.

You also need to include a client class to test your code for both the parent class and the subclass.

Code for Store below(Super class aka Parent class)

public class Store
{
public final double SALES_TAX_RATE = 0.06;
private String name;

/**
* Overloaded constructor:

* Allows client to set beginning value for name
* This constructor takes one parameter

* Calls mutator method
* @param newName the name of the store
*/
public Store( String newName )
{
setName( newName );
}

/** getName method
* @return a String, the name of the store
*/
public String getName( )
{
return name;
}

/**
* Mutator method:

* Allows client to set value of name
* @param newName the new name for the store
*/
public void setName( String newName )
{
name = newName;
}

/**
* @return a string representation of the store
*/
public String toString( )
{
return( \"name: \" + name );
}

/**
* equals method
* Compares two Store objects for the same field value
* @param o another Store object
* @return a boolean, true if this object
* has the same field value as the parameter s
*/
public boolean equals( Object o )
{
if ( ! ( o instanceof Store ) )
return false;
else
{
Store s = (Store) o;
return ( name.equalsIgnoreCase( s.name ) );
}//end else

}//end equals method


}//end class

Solution

public class Store {
   public final double SALES_TAX_RATE = 0.06;
   private String name;

   /**
   * Overloaded constructor:
   *
   * Allows client to set beginning value for name This constructor takes one
   * parameter
   *
   * Calls mutator method
   *
   * @param newName
   * the name of the store
   */
   public Store(String newName) {
       setName(newName);
   }

   /**
   * getName method
   *
   * @return a String, the name of the store
   */
   public String getName() {
       return name;
   }

   /**
   * Mutator method:
   *
   * Allows client to set value of name
   *
   * @param newName
   * the new name for the store
   */
   public void setName(String newName) {
       name = newName;
   }

   /**
   * @return a string representation of the store
   */
   public String toString() {
       return (\"name: \" + name);
   }

   /**
   * equals method Compares two Store objects for the same field value
   *
   * @param o
   * another Store object
   * @return a boolean, true if this object has the same field value as the
   * parameter s
   */
   public boolean equals(Object o) {
       if (!(o instanceof Store))
           return false;
       else {
           Store s = (Store) o;
           return (name.equalsIgnoreCase(s.name));
       }// end else
   }// end equals method

}// end class

/**
* @author xinthe
*
*/
public class Restaurant extends Store {

   int peopleServed;
   double avgPrice;

   /**
   * @param newName
   * @param peopleServed
   * @param avgPrice
   */
   public Restaurant(String newName, int peopleServed, double avgPrice) {
       super(newName);
       this.peopleServed = peopleServed;
       this.avgPrice = avgPrice;
   }

   /**
   * @return the peopleServed
   */
   public int getPeopleServed() {
       return peopleServed;
   }

   /**
   * @param peopleServed
   * the peopleServed to set
   */
   public void setPeopleServed(int peopleServed) {
       this.peopleServed = peopleServed;
   }

   /**
   * @return the avgPrice
   */
   public double getAvgPrice() {
       return avgPrice;
   }

   /**
   * @param avgPrice
   * the avgPrice to set
   */
   public void setAvgPrice(double avgPrice) {
       this.avgPrice = avgPrice;
   }

   public boolean equals(Object o) {
       if (!(o instanceof Restaurant))
           return false;
       else if (super.equals(o)) {
           Restaurant r = (Restaurant) o;
           if (r.getAvgPrice() == getAvgPrice()
                   && r.getPeopleServed() == getPeopleServed())
               return true;
           else
               return false;
       } else {

           return false;
       }
   }// end equals method

   /*
   * (non-Javadoc)
   *
   * @see java.lang.Object#toString()
   */
   @Override
   public String toString() {
       return super.toString() + \"(peopleServed: \" + peopleServed
               + \", avgPrice: \" + avgPrice + \")\";
   }

   /**
   * @return
   */
   public double salesTax() {

       return getAvgPrice() * getPeopleServed() * SALES_TAX_RATE;

   }

   public static void main(String[] args) {

       Restaurant restaurant = new Restaurant(\"RestName\", 255, 25.36);
       System.out.println(restaurant);
       System.out.println(\"Sales Tax per year :\" + restaurant.salesTax());
   }

}

OUTPUT:

name: RestName(peopleServed: 255, avgPrice: 25.36)
Sales Tax per year :388.008

Write in JAVA ONLY! Write a class encapsulating a restaurant,which inherits from Store. A restaurant has the following additional attributes: how many people ar
Write in JAVA ONLY! Write a class encapsulating a restaurant,which inherits from Store. A restaurant has the following additional attributes: how many people ar
Write in JAVA ONLY! Write a class encapsulating a restaurant,which inherits from Store. A restaurant has the following additional attributes: how many people ar
Write in JAVA ONLY! Write a class encapsulating a restaurant,which inherits from Store. A restaurant has the following additional attributes: how many people ar

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site