Java代写 | COMP90041 Programming and Software Development Final Project

本次澳洲代写主要为java程序相关的project

1 Overview
In this project, you will develop an extension of the program SimpleCompetitions that you developed
in Assignment 2. SimpleCompetitions helps companies (e.g., retailers) create competitions to boost their
sales. For instance, during Easter Sale, a retailer can use your software to create a lucky draw game.
In the game, a customer is given entries equivalent to the size of its purchase after their single-purchase
nal balance, after discounts, reach a speci c amount, say $50. Once the competition time ends, the
retailer draws winners and the winning customers will get points added to their membership account;
customers can use these points for future purchases if they wish. Please read the competition policy
and application walk-through sections for more information. This nal project is designed in such a
way that we can evaluate your knowledge on all important topics you have learnt in this subject: 1)
class design and implementation, 2) control ow structures (e.g., if-then-else & switch-case statements,
loops), 3) basic I/O (e.g., Scanner class, formatted printing), 4) arrays, 5) inheritance & polymorphism,
6) exception handling, and 7) le I/O.

2 Your Task
Go to https://classroom.github.com/a/TeDP8xfn and accept the project. For details on how to check
out the repository, make sure to consult the Lab 3 Materials1. Once you have cloned the repository, you
will nd 12 classes.
SimpleCompetitions.java
Competition.java
LuckyNumbersCompetition.java
RandomPickCompetition.java
Entry.java
NumbersEntry.java
AutoNumbersEntry.java
DataProvider.java

Member.java
Bill.java
DataAccessException.java
DataFormatException.java
SimpleCompetitions.java will be the main application containing your main() method. The classes
come with some initial implementations that follow the design shown in Figure 1. You are asked to add
constructors, methods, and instance variables to complete the program. See the competition policy and
application walk-through sections to understand the required features of the program. Note that in
the provided UML class diagram and the application skeleton on GitHub, we only suggest
methods’ names; you can make any modi cations to the methods’ return types and their
argument lists if necessary to complete the task. You may add your own class(es) if you think it
is necessary, but your program must contain the classes mentioned above. In this project, you are also
asked to write Javadoc comments for classes and methods so that a documentation can be automatically
generated.
For this project, there is NO ASSUMPTION that all data (e.g., user inputs, le content)
will be of correct data types. So error control for incorrectly entered data types ARE
REQUIRED unless stated otherwise!.