本次JavaFX代写是实现一个课程管理系统
Object Oriented Programming
COP2513
B.1 Basic Classes
The basic classes for your program are those from Assignment 3:
•
•
•
Print.java – Interface for course printing.
Course.java – Abstract superclass that stores general course information.
GradedCourse.java – Subclass of Course. Stores grade information from courses
you have already taken. These courses are used to compute your GPA.
NonGradedCourse.java – Subclass of Course. Stores schedule information from
courses you are currently taking and do not have a grade yet. These courses do not
affect the computation of your GPA.
•
•
MyDegree.java – Contains the “main” method and the logic of your program.
B.1.1 Print Interface
The Print interface stored in package catalog and contains:
•
A public print method.
B.1.2 Course Class (Abstract)
Abstract Class Course implements Print interface and is stored in package catalog and
contains:
•
A private String data field institution storing the institution name, e.g. “USF”.
1
A private String data field prefix storing the 3 letter course prefix name.
A private String data field number storing the 4 digit course number.
A private int data field credits storing the number of credit hours.
A private String data field name storing the course name.
A private String data field semester storing the semester the course was taken.
Methods that set and return the values for each variable.
A print method printing the values of all variables.
B.1.3 GradedCourse Class
Class GradedCourse is a subclass of Course. It is stored in package catalog and contains:
•
•
A private String data field named letterGrade storing the letter grade (include -/+).
A private double data field named numericalGrade storing the numerical grade
corresponding to the letter grade.
•
•
Methods that set and return the values for each variable.
A print method printing the values of all variables.
B.1.4 NonGradedCourse Class
Class NonGradedCourse is a subclass of Course. It is stored in package catalog and
contains:
•
•
•
•
A private String data field days storing the days the class is taught, e.g. “TuTh”.
A private String data field startTime storing the time class starts, e.g. “12:30pm”.
A private String data field endTime storing the time class ends, e.g. “1:45pm”.
A private String data field bldgName storing the name of the building where the
class is taught, e.g. “SOC”.
•
•
A private String data field roomNumber storing the number of the room where the
class is taught, e.g. “151”.
A private String data field named instructorName storing the name of the
instructor teaching the class, e.g. “Weitzenfeld”.
•
•
Methods that set and return the values for each variable.
A print method printing the values of all variables.
B.1.5 MyDegree Class
Class MyDegree is stored in package degree and contains:
•
•
The main method should be moved to the GUI related classes (see GUI section).
An init method that reads ALL your course information from the “transcript.txt”
text file. Use exception handling when reading the file. Course data is similar to
that of Assignment 3. Create new course objects ONLY from information read
from the text file.
•
The existing print method should be updated as needed (see GUI section).
B.2 GUI
The GUI controls input and output from and to your program. Any new classes related to
the GUI should be stored in a package named gui. Package gui should contain class
GameGUI and any additional JavaFX related classes. You should move your main
method to GameGUI. The GUI should have a graphical design similar to that shown in
Fig. 1. The GUI should include the following functionality:
•
A TextField entry specifying the name of the input text file.
2
A TextArea where all course information gets printed. The TextArea should
include scrollbars as necessary in order to view all printed information. Every
time new information is printed, all previous information should be deleted from
the TextArea. Print format should be similar to that of Assignment 3.
A “Read File” button to read from the input text file and initialize the different
course objects. The program should only read from the file when this button is
pressed.
•
•
•
•
A “Print Graded Courses” button that prints only the graded courses.
A “Print NonGraded Courses” button that prints only the non-graded courses.
A “Print GPA” button that prints only the GPA.
DO NOT HARDCODE any course related information, including text file name.
Fig 1. GUI design
B.3 File Input
The text file that stores course information should be called “transcript.txt” and should be
stored inside the project directory but outside the “src” directory. The file name
“transcript.txt” SHOULD NOT BE HARDCODED into the program. The file format
should NOT include a numerical line stating the number of courses to be read. The file
format should ONLY include line entries corresponding to each course, graded and non-
graded. Course data should be separated by commas. The following is an example of a 4
course text file (note that there is no numerical starting line, e.g. “4”, in the file):
USF,COP,2512,3,Programming Fundamentals for IT,Fall2019,A,4.0
USF,CGS,1540,3,Intro to Databases,Fall2019,A-,3.67
USF,CGS,3303,3,IT Concepts,Fall2019,A-,3.67
USF,COP,2513,3,Object-Oriented Programming for IT,Spring2020,TuTh,12:30pm,1:45pm,SOC,151,Weitzenfeld
C. Evaluation
Evaluation is based on the submitted Java program and corresponding report.
程序代写代做C/C++/JAVA/安卓/PYTHON/留学生/PHP/APP开发/MATLAB

本网站支持淘宝 支付宝 微信支付 paypal等等交易。如果不放心可以用淘宝交易!
E-mail: [email protected] 微信:itcsdx
如果您使用手机请先保存二维码,微信识别。如果用电脑,直接掏出手机果断扫描。
