Question

In: Computer Science

JAVA/Netbeans •Design a class named Person with fields for holding a person’s name, address and phone...

JAVA/Netbeans

•Design a class named Person with fields for holding a person’s name, address and phone number (all Strings)

–Write a constructor that takes all the required information.

–Write a constructor that only takes the name of the person and uses this to call the first constructor you wrote.

–Implement the accessor and mutator methods. Make them final so subclasses cannot override them

–Implement the toString() method

•Design a class named Customer, which extends the Person class. It should have a field for the Customer ID (String) and a Boolean field indicating whether the customer wishes to be on a mailing list.

–Write a constructor that takes the name of the customer, id, address, phone number and the Boolean. Use super to call the appropriate constructor in Person

–Write a constructor that takes the name of the customer and id only and uses this to call the first constructor you wrote. It should set the Boolean to false.

–Implement the accessor and mutator methods for the customer id and Boolean.

–Override the toString() method using @override and use super to call Person’s toString()

•Write a main method that asks the user for the info of two customers, the first asking only for name and id, and the second asking for all the information. It creates 2 Customers and prints them out.

Solutions

Expert Solution

Explanation: I have implemented the code and have written Student and Customer class.I have written all the methods and have made accessors and mutators final.I have used Scanner to take inputs and have created the Customer objects and printed both the information. I have also shown the output of the program,please find the image attached with the answer.

//Person class


public class Person {
   private String name;
   private String address;
   private String phoneNumber;

   public Person(String name, String address, String phoneNumber) {
       super();
       this.name = name;
       this.address = address;
       this.phoneNumber = phoneNumber;
   }

   public Person(String name) {
       this.name = name;
   }

   public final String getName() {
       return name;
   }
   public final void setName(String name) {
       this.name = name;
   }
   public final String getAddress() {
       return address;
   }
   public final void setAddress(String address) {
       this.address = address;
   }
   public final String getPhoneNumber() {
       return phoneNumber;
   }
   public final void setPhoneNumber(String phoneNumber) {
       this.phoneNumber = phoneNumber;
   }

   @Override
   public String toString() {
       return " name=" + name + ", address=" + address + ", phoneNumber="
               + phoneNumber;
   }

}

//Customer class

import java.util.Scanner;

public class Customer extends Person {
   private String customerId;
   private boolean mailingList;

   public Customer(String name, String customerId, String address,
           String phoneNumber, boolean mailingList) {
       super(name, address, phoneNumber);
       this.customerId = customerId;
       this.mailingList = mailingList;
   }

   public Customer(String name, String customerId) {
       super(name);
       this.mailingList = false;
       this.customerId = customerId;
   }

   public String getCustomerId() {
       return customerId;
   }

   public void setCustomerId(String customerId) {
       this.customerId = customerId;
   }

   public boolean isMailingList() {
       return mailingList;
   }

   public void setMailingList(boolean mailingList) {
       this.mailingList = mailingList;
   }

   @Override
   public String toString() {
       return "Customer [customerId=" + customerId + ", mailingList="
               + mailingList + ", " + super.toString() + "]";
   }

   public static void main(String[] args) {
       Scanner input = new Scanner(System.in);
       System.out.print("Enter the id of the customer1:");
       String id = input.next();
       System.out.print("Enter the name of the customer1:");
       String name = input.next();
       Customer customer1 = new Customer(name, id);
       System.out.print("Enter the id of the customer2:");
       id = input.next();
       System.out.print("Enter the name of the customer2:");
       name = input.next();
       System.out.print("Enter the address of the customer2:");
       String address = input.next();
       System.out.print("Enter the phone number of the customer2:");
       String phoneNumber = input.next();
       System.out.print(
               "Enter the mailing list (true or false) of the customer2:");
       boolean mailingList = input.nextBoolean();
       Customer customer2 = new Customer(name, id, address, phoneNumber,
               mailingList);
       System.out.println("Customer 1: ");
       System.out.println(customer1.toString());
       System.out.println("Customer 2: ");
       System.out.println(customer2.toString());
       input.close();
   }

}

Output:


Related Solutions

(Java) Design a class named Person with fields for holding a person’s name, address, and telephone...
(Java) 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...
Design a class named Person with fields for holding a person's name, address, and telephone number(all...
Design a class named Person with fields for holding a person's name, address, and telephone number(all as Strings). Write a constructor that initializes all of these values, and mutator and accessor methods for every field. Next, design a class named Customer, which inherits from the Person class. The Customer class should have a String field for the customer number and a boolean field indicating whether the customer wishes to be on a mailing list. Write a constructor that initializes these...
Design a class named Person with fields for holding a person's name, address, and telephone number(all...
Design a class named Person with fields for holding a person's name, address, and telephone number(all as Strings). Write a constructor that initializes all of these values, and mutator and accessor methods for every field. Next, design a class named Customer, which inherits from the Person class. The Customer class should have a String field for the customer number and a boolean field indicating whether the customer wishes to be on a mailing list. Write a constructor that initializes these...
In java, create a class named Contacts that has fields for a person’s name, phone number...
In java, create a class named Contacts that has fields for a person’s name, phone number and email address. The class should have a no-arg constructor and a constructor that takes in all fields, appropriate setter and getter methods. Then write a program that creates at least five Contact objects and stores them in an ArrayList. In the program create a method, that will display each object in the ArrayList. Call the method to demonstrate that it works. Include javadoc...
Write a class named ContactEntry that has fields for a person’s name, phone number and email...
Write a class named ContactEntry that has fields for a person’s name, phone number and email address. The class should have a no-arg constructor and a constructor that takes in all fields, appropriate setter and getter methods. Then write a program that creates at least five ContactEntry objects and stores them in an ArrayList. In the program create a method, that will display each object in the ArrayList. Call the method to demonstrate that it works. I repeat, NO-ARG constructors....
Write a class named Person with data attributes for a person’s first name, last name, and...
Write a class named Person with data attributes for a person’s first name, last name, and telephone number. Next, write a class named Customer that is a subclass of the Person class. The Customer class should have a data attribute for a customer number and a Boolean data attribute indicating whether the customer wishes to be on a calling list. Demonstrate an instance of the Customer class in a simple program. Using python
Design a class named Pet, which should have the following fields: Name – The name field...
Design a class named Pet, which should have the following fields: Name – The name field holds the name of a pet. Type – The type field holds the type of animal that is the pet. Example values are “Dog”, “Cat”, and “Bird”. Age – The age field holds the pet’s age. The Pet class should also have the following methods: setName – The setName method stores a value in the name field. setType – The setType method stores a...
Java... Design a Payroll class with the following fields: • name: a String containing the employee's...
Java... Design a Payroll class with the following fields: • name: a String containing the employee's name • idNumber: an int representing the employee's ID number • rate: a double containing the employee's hourly pay rate • hours: an int representing the number of hours this employee has worked The class should also have the following methods: • Constructor: takes the employee's name and ID number as arguments • Accessors: allow access to all of the fields of the Payroll...
Java Question Design a class named Person and its two subclasses named Student and Employee. Make...
Java Question Design a class named Person and its two subclasses named Student and Employee. Make Faculty and Staff subclasses of Employee. A person has a name, address, phone number, and email address. A student has a class status (freshman, sophomore, junior, or senior). Define the status as a constant. An employee has an office, salary, and date hired. Use the Date class to create an object for date hired. A faculty member has office hours and a rank. A...
Design a class named Employee. The class should keep the following information in fields: ·         Employee...
Design a class named Employee. The class should keep the following information in fields: ·         Employee name ·         Employee number in the format XXX–L, where each X is a digit within the range 0–9 and the L is a letter within the range A–M. ·         Hire date Write one or more constructors and the appropriate accessor and mutator methods for the class. Next, write a class named ProductionWorker that inherits from the Employee class. The ProductionWorker class should have fields...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT