Aug 20th, 2014
Computer Science
Price: $35 USD

Question description


You have been assigned by your employer to create a computer application to help employees manage their contact list. Users must be able to store two types of contacts: business and personal. Both types have common fields as well as properties unique to them. The application needs to accept and store contacts by type. Your team lead has required that you use an object-oriented design for the application. You are encouraged to consider usability of the system when designing the user interface. It is up to you if you want to use a menu-driven or graphical user interface; however, the approach needs to create an inheritance relationship for the contacts in order to facilitate evolving this application to easily add new contact types in the future.


Note: Submit all .java and .class files in one zipped folder.

Note: To complete this project, you will need the latest Java SE Development Kit (JDK). This includes the Java Runtime Environment (JRE) and command line development tools that are useful for developing applets and applications. It is recommended that you complete this project using NetBeans Integrated Development Environment. To download this program, see the web link below.

Create a contact list application that meets the employer’s following minimum requirements.

A.  Input Requirements

1.  Include a prompt that allows the user to enter a command from the following four options, repeating the process of displaying the menu screen until the user has selected “quit.”

•  add a business contact

•  add a personal contact

•  display contacts

•  quit

2.  Include a prompt that allows the user to enter the following identifiable information when the “add a business contact” command is selected:

•  first name

•  last name

•  address

•  phone number

•  e-mail address

•  job title

•  organization

Note: You are not required to store the contact information as persistent data in a database.

3.  Include a prompt that allows the user to enter the following identifiable information when the “add a personal contact” command is selected:

•  first name

•  last name

•  address

•  phone number

•  e-mail address

•  date of birth

B.  Output Requirements

1.  Display the results to the user on screen in a readable and descriptive format (e.g., System.out) by doing the following:

a.  Display all contacts’ first and last names when the “display contacts” command is selected.

b.  Include a numeric key for each contact that will be used to invoke the method that displays the contact details.

2.  Include a prompt that allows the user to enter the numeric key to display all details of the contact in a readable and descriptive format (e.g., System.out, output to a text file using FileWriter).

a.  Identify contacts by type when displaying the details of a contact: business or personal.

C.  Design Requirements

1.  Demonstrate use of collections (e.g., TreeSets, ArrayList).

2.  Demonstrate use of encapsulation.

3.  Demonstrate use of inheritance by doing the following:

a.  Create one abstract class.

b.  Create two subclasses.

4.  Demonstrate use of polymorphism by overriding a method of the abstract class in both subclasses (i.e., method that displays contact details).

Tutor Answer

(Top Tutor) Daniel C.
School: UC Berkeley

Studypool has helped 1,244,100 students

8 Reviews

On Time
Dec 3rd, 2016
" The best tutor out there!!!! "
Nov 24th, 2016
" Excellent work as always thanks so much "
Nov 10th, 2016
" Thanks for the help. "
Nov 1st, 2016
" Thanks, good work "
Oct 19th, 2016
" Wow this is really good.... didn't expect it. Sweet!!!! "
Oct 10th, 2016
" This tutor is great! "
Oct 5th, 2016
" excellent work as always thanks for the help "
Sep 26th, 2016
" Thank you, Thank you, for top quality work, this is your guy!! "
Ask your homework questions. Receive quality answers!

Type your question here (or upload an image)

1821 tutors are online

Brown University

1271 Tutors

California Institute of Technology

2131 Tutors

Carnegie Mellon University

982 Tutors

Columbia University

1256 Tutors

Dartmouth University

2113 Tutors

Emory University

2279 Tutors

Harvard University

599 Tutors

Massachusetts Institute of Technology

2319 Tutors

New York University

1645 Tutors

Notre Dam University

1911 Tutors

Oklahoma University

2122 Tutors

Pennsylvania State University

932 Tutors

Princeton University

1211 Tutors

Stanford University

983 Tutors

University of California

1282 Tutors

Oxford University

123 Tutors

Yale University

2325 Tutors