Question: Create a ( simplified ) contact book! Write a java program to add contact information to a contact record and display the contact details!In this

Create a (simplified) contact book! Write a java program to add contact information to a contact record and display the contact details!In this challenge, create 2 domain classes called Contact and Address and one driver class called ContactBook. For each domain class, write the constructor, toString method, and getters/setters for each attribute. The Address class will contain the following private attributes:Street number (int)Street name (String)Zip Code (int) City (String)State (String)The Contact class will contain the following private attributes:First name (String)Last name (String)Birthday (String with format of mm/dd/yyyy)Phone number (String)Email address (String)Home address (Address) Write a driver class called ContactBook that has the following methodscreateAddressRecord()Asks the user via the console for the street name, street number, zip code, city, and state of an address and instantiates an Address object with that information. Returns the newly constructed Address object.createContactRecord(Address homeAddress)Asks the user via the console for the first name, last name, birthday, phone number, and email address of a contact and instantiates a Contact object with that information. Returns the newly constructed Contact object.showContactDetails(Contact contact)Prints the message Here is the contact info for and concatenates contacts first & last names. Then prints the contact object information. Remember that toString method is not called explicitly. main()Calls createAddressRecord method which will return an Address objectCalls createContactRecord method which will return a Contact objectRepeats steps 1 & 2 to create 3 different contact objects.Calls showContactDetails method 3 times (once for each Contact object)Example OutputContact Book!Add new address:Enter the street number: 30Enter the street name: Hillwood StreetEnter the ZIP code: 98101Enter the city: SeattleEnter the state: WAAdd new contact:Enter the first name: ArnoldEnter the last name: ShortmanEnter the birthday (mm/dd/yyyy): 10/07/1994Enter the phone number: (206)555-1212Enter the email address: footballhead@heyarnold.comContact 1 Saved! Add new address:Enter the street number: 667Enter the street name: Dimmsdale DriveEnter the ZIP code: 1313Enter the city: DimmsdaleEnter the state: CAAdd new contact:Enter the first name: TimmyEnter the last name: TurnerEnter the birthday (mm/dd/yyyy): 03/21/1992Enter the phone number: (123)456-7890Enter the email address: timmy.turner@fairlyoddparents.comContact 2 Saved! Add new address:Enter the street number: 401Enter the street name: Middleton WayEnter the ZIP code: 90210Enter the city: MiddletonEnter the state: CAAdd new contact:Enter the first name: KimEnter the last name: PossibleEnter the birthday (mm/dd/yyyy): 07/17/1992Enter the phone number: (310)555-8888Enter the email address: call.me.beep.me@kimpossible.comContact 3 Saved! Here are the contact details for Arnold Shortman:Contact{firstname: 'Arnold', lastname: 'Shortman', birthday: '10/07/1994', phoneNumber: '(206)555-1212', email: 'footballhead@heyarnold.com', homeAddress: Address{number: 30, street: 'Hillwood Street', city: 'Seattle', state: 'WA', zipCode: 98101}} Here are the contact details for Timmy Turner:Contact{firstname: 'Timmy', lastname: 'Turner', birthday: '03/21/1992', phoneNumber: '(123)456-7890', email: 'timmy.turner@fairlyoddparents.com', homeAddress: Address{ number: 667, street: 'Dimmsdale Drive', city: 'Dimmsdale', state: 'CA', zipCode: 1313}} Here are the contact details for Kim Possible:Contact{firstname: 'Kim', lastname: 'Possible', birthday: '07/17/1992', phoneNumber: '(310)555-8888', email: 'call.me.beep.me@kimpossible.com', homeAddress: Address{number: 401, street: 'Middleton Way', city: 'Middleton', state: 'CA', zipCode: 90210}}SubmissionYou need to submit a single file named ContactBook.java.Grading CriteriaCode readability: 10%Using comments to explain logic: 10%Correctness of Java syntax (no compilation error): 10%Proper scan of System.in: 10%Proper usage of methods: 10%Proper indirect use of toString: 20%Program displays all required messages when given valid input: 10%Program displays numeric values to specification: 10%Passing all tests: 10%

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!