Java 2 billBook -invoiceNumber: String -visitDate: String -patientName: String -paid: boolean -bills: bill[] -doctor: String +bill(all parameters) +Setters/getters methods(if needed) +printInvoice(): void +billBook(doctor:String,capacity:int) +Setters/getters methods (if needed) +addBills(): void +payBill(invoiceNumber: String): int Implement the class bill:a. Write the constructor that takes as parameters all data fields except the paid value. A bill object is by defauld not paid. b. The printInvoice() method should output the following information: The invoiceNumber, the visitDate, the name of the patient name A message “The bill is paid” or “The bill is not paid” according to the value of the field paid. 2. Implement the class billBook using the above UML: a. Write the constructor that takes as parameters the name of the doctor who has examined the patient and the capacity which represents the size of the array bills. b. Write the method addBills that reads the information of bill objects from the user, creates the objects, and fill them into the array billBook. c. Write the method payBill that: It takes as parameter the invoive number. Searches for the bill if available. If the bill is found, and it is not paid then the paid value is updated to true. The method returns 1. If the bill is not found, the value -1 is returned. 3. Write an application (Driver class) in which you: - Create a billBook object of capacity 5. Read the doctor’s name from the user. - Call the method addBills. - Allow the user to pay a bill of his/her choice. Ask the user to enter the invoiceNumber of as many bill objects as he/she wants. If the bill is not found, then a “The bill is not found” message should be displayed. Assume the invoice numbers are different. - Find the number of paid bills in the array. For a sample run and the assignment guidelines see next page. Enter the doctor's name: Joe Yassin Bill 1 Enter the invoiceNumber, the patient name and the visit date: M123 HassanRammal 12-1-2021 Bill 2 Enter the invoiceNumber, the patient name and the visit date: M456 RachelRoy 21-4-2020 Bill 3 Enter the invoiceNumber, the patient name and the visit date: M765 SallyMoussa 09-02-2020 Bill 4 Enter the invoiceNumber, the patient name and the visit date: M76 MiraHammoud 07-04-2020 Bill 5 Enter the invoiceNumber, the patient name and the visit date: M13 JosephMakki 05-07-2020 Enter the invoice number to pay: M456 Bill is paid Continue?[y to continue]: y Enter the invoice number to pay: M765 Bill is paid Continue?[y to continue]: y Enter the invoice number to pay: M900 The bill is not found Continue?[y to continue]: n The total number of paid bills is 2 Assignment Guidelines: - This assignment is posted on Monday April 26
Java 2
billBook
-invoiceNumber: String
-visitDate: String
-patientName: String
-paid: boolean
-bills: bill[]
-doctor: String
+bill(all parameters)
+Setters/getters methods(if
needed)
+printInvoice(): void
+billBook(doctor:String,capacity:int)
+Setters/getters methods (if needed)
+addBills(): void
+payBill(invoiceNumber: String): int
Implement the class bill:a. Write the constructor that takes as parameters all data fields except the paid value. A
bill object is by defauld not paid.
b. The printInvoice() method should output the following information:
The invoiceNumber, the visitDate, the name of the patient name
A message “The bill is paid” or “The bill is not paid” according to the value of the field paid.
2. Implement the class billBook using the above UML:
a. Write the constructor that takes as parameters the name of the doctor who has
examined the patient and the capacity which represents the size of the array bills.
b. Write the method addBills that reads the information of bill objects from the user,
creates the objects, and fill them into the array billBook.
c. Write the method payBill that:
It takes as parameter the invoive number.
Searches for the bill if available. If the bill is found, and it is not paid then the paid
value is updated to true. The method returns 1.
If the bill is not found, the value -1 is returned.
3. Write an application (Driver class) in which you:
- Create a billBook object of capacity 5. Read the doctor’s name from the user.
- Call the method addBills.
- Allow the user to pay a bill of his/her choice. Ask the user to enter the invoiceNumber
of as many bill objects as he/she wants. If the bill is not found, then a “The bill is not
found” message should be displayed. Assume the invoice numbers are different.
- Find the number of paid bills in the array.
For a sample run and the assignment guidelines see next page.
Enter the doctor's name: Joe Yassin
Bill 1
Enter the invoiceNumber, the patient name and the visit date: M123
HassanRammal 12-1-2021
Bill 2
Enter the invoiceNumber, the patient name and the visit date: M456
RachelRoy 21-4-2020
Bill 3
Enter the invoiceNumber, the patient name and the visit date: M765
SallyMoussa 09-02-2020
Bill 4
Enter the invoiceNumber, the patient name and the visit date: M76
MiraHammoud 07-04-2020
Bill 5
Enter the invoiceNumber, the patient name and the visit date: M13
JosephMakki 05-07-2020
Enter the invoice number to pay: M456
Bill is paid
Continue?[y to continue]: y
Enter the invoice number to pay: M765
Bill is paid
Continue?[y to continue]: y
Enter the invoice number to pay: M900
The bill is not found
Continue?[y to continue]: n
The total number of paid bills is 2
Assignment Guidelines:
- This assignment is posted on Monday April 26
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 1 images