合肥生活安徽新闻合肥交通合肥房产生活服务合肥教育合肥招聘合肥旅游文化艺术合肥美食合肥地图合肥社保合肥医院企业服务合肥法律

代写159.234 OBJECT-ORIENTED程序

时间:2024-06-02  来源:合肥网hfw.cc  作者:hfw.cc 我要纠错



159.234 OBJECT-ORIENTED PROGRAMMING S1, 2024 
Assignment 3 
Deadline: 4 June 2024, 11pm 
Evaluation: 40 marks (20% of your final grade) 
Late Submission: Deduct 4 marks per day late 
Individual Work You must complete this assignment by yourself (you must NOT share your code 
with others or use others’ code) 
Purpose: Reinforce Java OOP core concepts (abstraction, encapsulation, inheritance, and 
polymorphism), collections framework and generics, exception handling, input and 
output streams, and GUI using Swing 
 
1. System Description (Overview of Problem) 
 
You are asked to write a program in Java to simulate a computer store’s management system 
A computer store maintains three categories of computers: Desktop PCs, Laptops, and Tablets. Each 
category is further divided into different types, as listed below: 
 
Desktop PC types: Gaming, Home & Study, Business, and Compact 
Laptop types: Gaming, Home & Study, Business, and Thin & Light 
Tablet types: Android, Apple, and Windows 
 
Each computer’s unique ID, brand, CPU family, and price need to be specified regardless of its category. 
The computer store must also record memory size (GB) and SSD capacity (GB) for Desktop PCs and 
Laptops as well as screen size (inches) for Laptops and Tablets. 
 
The computer store has two types of staff: salespersons and managers. A salesperson can log into the 
computer store’s management system to view a list of all computers. A salesperson can also search for 
computers by category and type before clicking on a search result to view that computer’s details. 
 
A manager can log into the computer store’s management system to do everything that a salesperson can 
do, but a manager can also maintain records—by updating computer details or adding and deleting 
computers. 
 
2. Tasks to complete: 
a) Create a narrative step-by-step storyboard using screenshots of your system-generated GUIs to 
demonstrate required functions of the computer store’s management system (please refer to a 
sample at the end of this document; you can use its format to present your work) 
 
Your Java code should: 
b) Import the provided test data (computers.txt) to your system using Java Input 
c) Add five staff to the computer store’s system—three salespersons and two managers—using usernames 
and passwords provided (this function should have classes designed with an appropriate inheritance 
hierarchy that applies core OOP concepts) 
d) Realize all functions specified in the system description above (for this assignment, you are NOT 
required to update computers.txt file after a manager update/add/delete records, you only need to 
update the GUI to show the change) 
3. Design and Implementation Guidelines 
Note: You will receive credit for correctness, completeness, no code duplication, and clear on-screen outputs. 
Also, we will grade your program using the following OOP and general software implementation 
guidelines: 
 
 1) Encapsulation design and implementation—proper use of modifiers 
a. Private/Protected/Public 
b. Must make use of getters and/or setters wherever appropriate  

 
159.234 OBJECT-ORIENTED PROGRAMMING S1, 2024 
 
 2) Inheritance design and implementation 
a. Reasonable class hierarchies 
b. Proper data fields separation in base and derived classes 
c. Proper methods separation/overloading/overriding in base and derived classes 
d. Proper use of base and derived class constructors 
 
3) Polymorphism and implementation 
a. Write generic code that targets the base class whenever possible 
b. Appropriate use of overriding in derived classes to realize polymorphism 
 
4) Information store and implementation 
a. Use HashMap and other Java collection class(es) to store information 
 
 5) Exception handling 
a. Throw an exception object when an application error occurs (e.g., when an invalid piece of data is 
entered) 
b. Use “try/catch/finally” or “try/catch” block to handle the exception 
 
6) Use Java Swing to implement your GUI 
 
4. Other Specifications 
You must follow the next three specifications when completing this assignment: 
 
1) Place appropriate comments in your program—e.g.: 
/** explain what the program file is doing . . . */ 
// explain what a part/method of the program is doing… 
2) DO NOT add any file path for ‘computers.txt’ (put it directly in your project folder when you test your 
code) 
3) DO NOT add your own package name(s) to the beginning of your .java files (this requirement is only 
for marking purpose) 
 
5. Submission Requirements: 
1) Your storyboard as a PDF file 
2) All your .java files (source codes) 
3) Any image file(s) you may have used in your program (put the image file(s) directly in your project 
folder when you test your code - this requirement is only for marking purposes). 
4) Zip all your files from 1), 2), and 3) together and submit as a single file to Stream 
 
6. You MUST use the following test data in your assignment: 
 
1) Staff details 
Usernames Passwords 
Staff 1 – Salesperson p1 p1 
Staff 2 – Salesperson p2 p2 
Staff 3 – Salesperson p3 p3 
Staff 4 – Manager m1 m1 
Staff 5 – Manager m2 m2 
 
159.234 OBJECT-ORIENTED PROGRAMMING S1, 2024 
 
2) Input file computers.txt to download 
 
 3) Example GUI and functions narrations: 
 
Note: this is just a sample GUI design; you are free to design your own GUI and function flow as long 
as they are reasonable and complete the tasks listed in item “2.” above 
 
When the program runs:  
 
Record of Desktop 
PC: 
Category, 
Type, 
ID, 
Brand, 
CPU Family, 
Memory Size (GB), 
SSD Capacity (GB), 
Price ($) 
Record of Laptop: 
Category, 
Type, 
ID, 
Brand, 
CPU Family, 
Memory Size (GB), 
SSD Capacity (GB), 
Screen Size (Inches), 
Price ($) 
Record of Tablet: 
Category, 
Type, 
ID, 
Brand, 
CPU Family, 
Screen Size (Inches), 
Price ($) 
Click “login” icon button 
Log in as a salesperson  

 
159.234 OBJECT-ORIENTED PROGRAMMING S1, 2024 
 
Can select and display 
computers from any 
Category (No specific 
order required) 
 
 List of all computers 
(No specific order required) 
  

 
159.234 OBJECT-ORIENTED PROGRAMMING S1, 2024 
 
Can select and display 
computers from any 
Category and its sub type 
Can click any selected 
computer to check its 
details 
Note that all editing 
functions are disabled 
for a salesperson 
Click to log out prelogin
screen is 
displayed  

 
159.234 OBJECT-ORIENTED PROGRAMMING S1, 2024 
  
This time, log in as a 
manager (note that both 
“Browse” and 
“Check/Update” tabs 
are enabled this time) 
A manager can use all 
the search functions 
that a salesperson can  

 
159.234 OBJECT-ORIENTED PROGRAMMING S1, 2024 
 
A manager can click 
“Add” to add a new 
computer (‘Model ID’ 
is unique, so a new 
computer can’t use an 
existing ‘Model ID’) 
 
Pop-up window to 
confirm success of 
adding  

 
159.234 OBJECT-ORIENTED PROGRAMMING S1, 2024 
 
New computer’s 
details reflected 
in list 
A manager can click 
‘Update’ to update a 
computer’s details; 
any data can be 
modified except 
‘Model ID’ 
Pop-up window to 
confirm success of 
update  

 
159.234 OBJECT-ORIENTED PROGRAMMING S1, 2024 
 
Update reflected in 
this list 
A manager can click 
‘Delete’ to delete a 
computer from the 
system 
Clicking ‘Clear’ will clear 
all text fields’ values on 
this tab too (but does not 
actually change or delete a 
computer’s data )  
10 
 
159.234 OBJECT-ORIENTED PROGRAMMING S1, 2024 
 
List also reflects 
deletions 
Click “Log out” to 
go back to pre-login 
screen 
请加QQ:99515681  邮箱:99515681@qq.com   WX:codinghelp






 

扫一扫在手机打开当前页
  • 上一篇:越南纸质签证入境流程(越南纸质签证入境有几种方式)
  • 下一篇:代写COMP 3023、C++程序设计代做
  • 无相关信息
    合肥生活资讯

    合肥图文信息
    海信罗马假日洗衣机亮相AWE  复古美学与现代科技完美结合
    海信罗马假日洗衣机亮相AWE 复古美学与现代
    合肥机场巴士4号线
    合肥机场巴士4号线
    合肥机场巴士3号线
    合肥机场巴士3号线
    合肥机场巴士2号线
    合肥机场巴士2号线
    合肥机场巴士1号线
    合肥机场巴士1号线
    合肥轨道交通线路图
    合肥轨道交通线路图
    合肥地铁5号线 运营时刻表
    合肥地铁5号线 运营时刻表
    合肥地铁4号线 运营时刻表
    合肥地铁4号线 运营时刻表
  • 关于我们 | 打赏支持 | 广告服务 | 联系我们 | 网站地图 | 免责声明 | 帮助中心 | 友情链接 |

    Copyright © 2020 hfw.cc Inc. All Rights Reserved. 合肥网 版权所有
    ICP备06013414号-3 公安备 42010502001045