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

Java Inheritance 4,Person and Customer Class Design a class named Person with fi

ID: 3547808 • Letter: J

Question


Java Inheritance


4,Person and Customer Class


Design a class named Person with fields for holding a person's name, address, and telephone number. Write one or more constructors and the appropriate mutator and accessor methods for the class's fields.


Next, design a class named Customer, which extends the Person class. The Customer class should have a field for a customer number and a boolean field indicating whether the customer wishes to be on a mailing list. Write one or more constructors and the appropriate mutator and accessor methods for the class's fields. Demonstrate an object of the Customer class in a simple program.






8, PreferredCustomer Class

A retail store has a preferred customer plan where customers can earn discounts on all their purchases. The amount of a customer's discount is determined by the amount of the customer's cumulative purchases in the store as follows:


* When a preferred customer spends $500, he or she gets a 5 percent discount on all future purchases.

* When a preferred customer spends $1,000, he or she gets a 6 percent discount in all future purchase.

* When a preferred customer spends $1,500, he or she gets a 7 percent discount in all future purchase.

* When a preferred customer spends $2,000 or more, he or she gets a 10 percent discount in all future purchase.


Design a class named PreferredCustomer, which extends the Customer class you created in Programming 4. The PreferredCustomer class should have fields for the amount of the customer's purchases and the Customer's discount level. Write one or more constructors and the appropriate mutator and accessor methods for the class's fields. Demonstrate the class in a simple program.



Add Comments as you write

Explanation / Answer

Person.java


public class Person {
   
    private String name;
    private String address;
    private String telephoneNumber;
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getAddress() {
        return address;
    }
    public void setAddress(String address) {
        this.address = address;
    }
    public String getTelephoneNumber() {
        return telephoneNumber;
    }
    public void setTelephoneNumber(String telephoneNumber) {
        this.telephoneNumber = telephoneNumber;
    }
    public Person(String name, String address, String telephoneNumber) {
        super();
        this.name = name;
        this.address = address;
        this.telephoneNumber = telephoneNumber;
    }
    public Person() {
        super();
       
    }
    @Override
    public String toString() {
        return "name=" + name + " address=" + address
                + " telephoneNumber=" + telephoneNumber;
    }
   
}


Customer.java


public class Customer extends Person{
    private int customerNumber;
    private boolean mailingList;
    public int getCustomerNumber() {
        return customerNumber;
    }
    public void setCustomerNumber(int customerNumber) {
        this.customerNumber = customerNumber;
    }
    public boolean isMailingList() {
        return mailingList;
    }
    public void setMailingList(boolean mailingList) {
        this.mailingList = mailingList;
    }
    public Customer(String name, String address, String telephoneNumber,
            int customerNumber, boolean mailingList) {
        super(name, address, telephoneNumber);
        this.customerNumber = customerNumber;
        this.mailingList = mailingList;
    }
    public Customer() {
        super();
       
    }
    @Override
    public String toString() {
        return super.toString() + " customerNumber=" + customerNumber + " mailingList="
                + mailingList ;
    }
   
}


PreferredCustomer .java


public class PreferredCustomer extends Customer {
    private double amountPurchased;
    private double discountLevel;
    public double getAmountPurchased() {
        return amountPurchased;
    }
    public void setAmountPurchased(double amountPurchased) {
        this.amountPurchased = amountPurchased;
        if(amountPurchased >= 2000) {
            this.discountLevel = 10;
        }
        else if(amountPurchased >= 1000 && amountPurchased < 2000) {
            this.discountLevel = 7;
        }
        else if(amountPurchased >= 500 && amountPurchased < 1000) {
            this.discountLevel = 6;
        }
        else {
            this.discountLevel = 5;
        }
    }
    public double getDiscountLevel() {
        return discountLevel;
    }
    public void setDiscountLevel(double discountLevel) {
        this.discountLevel = discountLevel;
    }
    public PreferredCustomer(String name, String address,
            String telephoneNumber, int customerNumber, boolean mailingList,
            double amountPurchased) {
        super(name, address, telephoneNumber, customerNumber, mailingList);
        setAmountPurchased(amountPurchased);
    }
    public PreferredCustomer() {
        super();
       
    }
    @Override
    public String toString() {
        return super.toString() + " amountPurchased=" + amountPurchased
                + " discountLevel=" + discountLevel ;
    }
   
   
}

CustomerTes.java


public class CustomerTest {

    public static void main(String[] args) {
        Person customer = new Customer("John", "2nd Street, XXX town",
                "001-2344342", 123, true);
        System.out.println(customer.toString());
        System.out.println("====================================================");
        Person preferredCustomer = new PreferredCustomer("John",
                "2nd Street, XXX town", "001-2344342", 123, true, 200);
        System.out.println(preferredCustomer.toString());
        System.out.println("====================================================");
        Person preferredCustomer2 = new PreferredCustomer("John",
                "2nd Street, XXX town", "001-2344342", 123, true, 700);
        System.out.println(preferredCustomer2.toString());
    }

}

Output:


name=John
address=2nd Street, XXX town
telephoneNumber=001-2344342
customerNumber=123
mailingList=true
====================================================
name=John
address=2nd Street, XXX town
telephoneNumber=001-2344342
customerNumber=123
mailingList=true
amountPurchased=200.0
discountLevel=5.0
====================================================
name=John
address=2nd Street, XXX town
telephoneNumber=001-2344342
customerNumber=123
mailingList=true
amountPurchased=700.0
discountLevel=6.0


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