1. Introduction CCCS 121 Object Oriented Programming language Group Course Project An object-based application is an application that involves objects created out of classes. These objects interact with each other to fulfill certain functionalities. The focus of this project is to develop an application written in java which involves the use of object-oriented programming. This project is a group project. As a student you will be given a chance to come up with an idea for your project. However, the project must satisfy the requirements given in this document. This document shall be used as a set of guidelines. You are allowed to make necessary additions and/or changes to the requirements with prior approval from your instructor. 2. Requirements Propose and implement an application, that contributes to solving a real-life problem. Your application should include at least the following: 2.1 Classes 3 to 4 classes each one of them should have: A. B. C. A number of private and public attributes. The private attributes (variables) will need corresponding set/get methods. 2 or more constructors, one of then should take all the class’s data members (attributes) as arguments. Some functionality methods that can demonstrate the relationship between different classes. For example, assume that we have a system for a hotel, where a costumer can book a room. Each costumer has an ID (private) and a name. Each room has a number and price. The relationship between the Customer class and the Room class is books as illustrated in the following class diagram: كلية علوم وهندسة الحاسب قسم علوم الحاسب والذكاء الاصطناعي College of Computer Science & Engineering Department of Computer Science & Artificial Intelligence This relationship should be implemented in the Customer side as a method that takes a Room object as an argument, so when a customer books a room, the room object will be stored for example in an ArrayList or a file in case if the customer is allowed to book more than one room. D. Each class should have a printDetails method that will print out to the user the details of an object . E. One Main (Test) class to create objects out of the classes in your application, and to demonstrate the interaction between these objects. 2.2 Objects A. IntheMain(Test)classcreateatleast3objectsoutofeachclassusingdifferent constructors. B. Aftercreatingtheobjects,showhowcouldyoureadorchangethevaluesofthe private attributes. C. Demonstrate the interaction (relationships) between these created objects. For example, assuming that you have created a customer object (c1) and a room object (r1), you can use the method books to book r1 for c1 as follows: c1.books(r1); D. Make a demo that shows the details to the user for each created object. 2.3 Files and Arrays A. When you create an object in the Test class, read the values of the object variables from the user (e.g., the value of an ID). B. After creating the objects store them temporally in an array (ArraList preferable). Then store them permanently in a file. C. When printing out the detail for an object read them from that file. كلية علوم وهندسة الحاسب قسم علوم الحاسب والذكاء الاصطناعي College of Computer Science & Engineering Department of Computer Science & Artificial Intelligence 2.4 Input Validation A. Applyinputvalidationwhereneeded,forexample,intheexamplegivenabove,the price of a room should not be a negative value, or you can’t have two customers with the same ID. 2.5 Inheritance (optional) Apply the inheritance in your application where possible.

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter10: Classes And Data Abstraction
Section: Chapter Questions
Problem 12PE: Some of the characteristics of a book are the title, author(s), publisher, ISBN, price, and year of...
icon
Related questions
Question

1. Introduction
CCCS 121
Object Oriented Programming language Group Course Project
An object-based application is an application that involves objects created out of classes. These objects interact with each other to fulfill certain functionalities.
The focus of this project is to develop an application written in java which involves the use of object-oriented programming. This project is a group project. As a student you will be given a chance to come up with an idea for your project. However, the project must satisfy the requirements given in this document.
This document shall be used as a set of guidelines. You are allowed to make necessary additions and/or changes to the requirements with prior approval from your instructor.
2. Requirements
Propose and implement an application, that contributes to solving a real-life problem. Your application should include at least the following:
2.1 Classes
3 to 4 classes each one of them should have:
A. B. C.
A number of private and public attributes. The private attributes (variables) will need corresponding set/get methods.
2 or more constructors, one of then should take all the class’s data members (attributes) as arguments.
Some functionality methods that can demonstrate the relationship between different classes. For example, assume that we have a system for a hotel, where a costumer can book a room. Each costumer has an ID (private) and a name. Each room has a number and price. The relationship between the Customer class and the Room class is books as illustrated in the following class diagram:
كلية علوم وهندسة الحاسب
قسم علوم الحاسب والذكاء الاصطناعي
College of Computer Science & Engineering
Department of Computer Science & Artificial Intelligence
This relationship should be implemented in the Customer side as a method that takes a Room object as an argument, so when a customer books a room, the room object will be stored for example in an ArrayList or a file in case if the customer is allowed to book more than one room.
D. Each class should have a printDetails method that will print out to the user the details of an object .
E. One Main (Test) class to create objects out of the classes in your application, and to demonstrate the interaction between these objects.
2.2 Objects
A. IntheMain(Test)classcreateatleast3objectsoutofeachclassusingdifferent constructors.
B. Aftercreatingtheobjects,showhowcouldyoureadorchangethevaluesofthe private attributes.
C. Demonstrate the interaction (relationships) between these created objects. For example, assuming that you have created a customer object (c1) and a room object (r1), you can use the method books to book r1 for c1 as follows: c1.books(r1);
D. Make a demo that shows the details to the user for each created object.
2.3 Files and Arrays
A. When you create an object in the Test class, read the values of the object variables from the user (e.g., the value of an ID).
B. After creating the objects store them temporally in an array (ArraList preferable). Then store them permanently in a file.
C. When printing out the detail for an object read them from that file.
كلية علوم وهندسة الحاسب
قسم علوم الحاسب والذكاء الاصطناعي
College of Computer Science & Engineering
Department of Computer Science & Artificial Intelligence
2.4 Input Validation
A. Applyinputvalidationwhereneeded,forexample,intheexamplegivenabove,the price of a room should not be a negative value, or you can’t have two customers with the same ID.
2.5 Inheritance (optional)
Apply the inheritance in your application where possible.

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Data members
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
Microsoft Visual C#
Microsoft Visual C#
Computer Science
ISBN:
9781337102100
Author:
Joyce, Farrell.
Publisher:
Cengage Learning,