ITC538 Programming in Java Assignment

Assignment Help JAVA Programming
Reference no: EM132516331

ITC538 Programming in Java Assignment - Charles Sturt University, Australia

Learning Outcome - This assessment task will assess the following learning outcome/s:

Be able to interpret and evaluate design requirements expressed in Unified Modelling Language (UML).

Be able to apply inheritance and aggregation patterns in the design and implementation of programs.

Be able to use object-oriented techniques and Java resources to develop small applications consisting of a number of classes.

Be able to compare and critically evaluate different programming paradigms.

Be able to manipulate file operations through Java programming.

Be able to implement Graphical User Interface (GUI) components using Java.

Task 1 -

In this task, you are required to provide the definition of a class called Student, which represents a typical (but a very limited) university student. Each student has a name (which consists of a string of characters) and a unique student identification (ID) number (consisting of a string of exactly six numerical digits).

You are also required to define a class called TestStudent, which will be used to perform a number of test used to among other things, verify the correctness of the Student class.

In order to maintain the uniqueness of the student ID, your program will need to check that any new IDs supplied by the user is not the same as any of the existing student IDs.

Following are a list of specifications of the Student class:

- Two fields name and id representing the student name and the student ID respectively as described above.

- Get and set methods for each field (getName(), getId(), setName(), setId()).

- A toString() method that returns a string description of a given student object.

- An isValidId() method which accepts a string representing a possible new student ID as an argument and returns a boolean value (true or false) indicating whether the new ID satisfies the structural requirements of the student ID or not.

- A IdExists() which accepts a string argument representing a possible new student ID and returns a boolean value indicating whether the new ID is already being used by another.

- student or not.

Your TestStudent class should be able to perform the following functions:

Create an ArrayList object of Student objects called studentList, using the student data stored in a text file named students.txt (you should create this file such that it stores the student name and ID of several students initially - one line per student).

Allow the user to add as many new Student objects as the user requests to the ArrayList ensuring that each student has a unique student ID.

When the user has finished adding new students to the list, the program will override the students.txt file such that it includes the data relating to the new students as well as the original ones.

Ability to display a full list of students as well as just the existing student IDs when necessary.

Ensure that the program is appropriately documented throughout and thoroughly tested to demonstrate its correct operation.

You need to submit java and class files, a short discussion to explain the logic on how the problem has been solved, and sample output (for detail please see marking criteria and presentation below).

Task 2 -

In this task, you are required to provide complete class definitions and then create instances of various classes and use methods to perform various tests.

(a) Define an abstract class called Textbook with the following fields and methods:

Fields: title, author, pages representing the title, author and the number of pages of a textbook for a given book respectively. Encapsulation should be used to protect these fields against intentional or accidental, direct modification.

Constructors: a no-args default constructor, and an overloaded constructor to initialise the fields to appropriate values when the instances of the class are created.

Methods: a toString() method to print a string representation of the objects, get and set methods to provide access to each of the three fields.

(b) Define a subclass of the Textbook class called ProgrammingTextbook with the following additional field and methods:

Field: language representing the particular language the programming textbook uses. Again, encapsulation should be used to protect this field against intentional or accidental, direct modification.

Constructors: a no-args default constructor, and an overloaded constructor to initialise the fields to appropriate values when the instances of the class are created.

Methods: a toString() method to print a string representation of the objects, additional get and set methods as required to provide access to the field.

(c) Define another subclass of the Textbook class called EngineeringTextbook with the following additional field and methods:

Field: subject representing the particular engineering subject the textbook teaches. Again, encapsulation should be used to protect this field against intentional or accidental, direct modification.

Constructors: a no-args default constructor, and an overloaded constructor to initialise the fields to appropriate values when the instances of the class are created.

Methods: a toString() method to print a string representation of the objects, additional get and set methods as required to provide access to the field.

(d) Finally, define another class called TestTextbooks with a main() method to perform necessary testing for the classes defined in the previous sections. In the main method, write the code to create at least two objects of the ProgrammingTextbook class and at least two other objects of the EngineeringTextbook class. Create an ArrayList object to store references to these objects and then test various methods of the objects using loop(s) and methods as necessary.

Ensure that the program is appropriately documented throughout and thoroughly tested to demonstrate its correct operation.

Task 3 -

Write a Java program using JavaFX that displays nine playing cards. In the first row display three playing cards (randomly selected from the first 52 cards). In the second row, display three Joker Cards (can be same) with 45 degree, 90 degree and 135 degree angles respectively. In the third row display three any Card (must be different themselves) with 135, 90 and 45 degrees respectively. A sample output is shown below.

The image icons used in the questions are available in the Resource folder of Interact2. You may need to use HBox and/or VBox Pane.

Task 4 -

Investigate the imperative programming paradigm, as exemplified by procedural programming and object-oriented programming, and the declarative programming paradigm, as exemplified by functional programming and logic programming.

The Reading from Brookshear, 2012 will form a starting point for your investigation but you need to do research using different sources such as websites, books, journals and/or conference papers. For further investigation, remember that you should not reference Wikipedia items in an essay, so make sure to find articles that you can reference.

Write an essay, of approximately 800 words, based on your investigation, which provides answers to the following questions:

What are the essential differences between the paradigms?

What are some of the programming languages used for these different paradigms?

What specific advantages are provided by these different programming approaches?

Your essay should be referenced using the APA referencing style.

You need to submit a single zip file containing:

1. All java, class files and testing outputs

2. A doc/pdf file (not more than 500 words) with the description of the problems including input and output in your own words, description of how you test this program with explaining logic, a snapshot of the program output, and UML design (where required, see marking criteria) for task 1, 2 and 3. For task 4, you need to submit an essay with maximum 800 words. Please make one doc/pdf file for all tasks.

Reference no: EM132516331

Questions Cloud

Discuss why organizations are moving to the cloud. : Discuss why organizations are moving to the cloud. Explain how using the ERP system and awards program would provide a competitive advantage for Colony Nursery
Describe brads motivation in terms of the goal setting : How might Nathan Decker lead effectively as the team starts norming and Describe Brad's motivation in terms of the goal setting motivation theory
What was the labour rate variance for november : What was the labour rate variance for November? Paquin Manufacturing Inc. uses standard costing and has established standards for single product
Engage in international or export marketing : Why should we study foreign cultures if we do not plan to engage in international or export marketing? Bring some cultural differences between your home country
ITC538 Programming in Java Assignment : ITC538 Programming in Java Assignment Help and Solution - Charles Sturt University, Australia - Assessment Writing Service
Calculate net financial cost to the refinery of investing : What other information might you need to gather in order to undertake a more comprehensive analysis? Calculate net financial cost to the refinery of investing
Describe the use of the t-test to explore this hypothesis : Briefly describe the purpose of the study, describe the use of the t-test to explore this hypothesis
Discuss the disadvantages of a standard costing system : Discuss the advantages and disadvantages of a standard costing system in which the standard direct labour rates per hour are not changed
Evaluate freedom of access versus security across : Evaluate freedom of access versus security across three major search engines by government authorities

Reviews

Write a Review

JAVA Programming Questions & Answers

  Implement an inheritance hierarchy based on the following

Implement an inheritance hierarchy based on the following specifications for Account class, Checking Account class, and Savings Account class Methods: processDeposit ( ) - accepts a single double parameter containing the deposit amount. Updates the ..

  Create an android application for pre-ordering beverages

Process Documentation for the Implementation La Cafe Android Application Summary of Project - create an android application for pre-ordering beverages and breakfast

  Write a java tcp socket program to do tcpsocket server

Write a Java TCP socket program to do TCPSocket server. When starts the server, IP address of the machine must be displayed so the client can use to connect.

  What is an example of a javascript framework in the

what is an example of a javascript framework? in the framework you have described what is an example of an application

  Differences between two approaches

Research and discuss the differences between these two approaches. In what situations would it be appropriate to use an array to hold data

  Design an educational game for high school kids

CP5307 - Advanced Mobile Technology - James Cook University - Design an educational game for high school kids (Grade 7-8) that helps them with maths.

  Write a program that that keeps track of sales of an item

Write a program that considers a class that keeps track of the sales of an item. An object of this class will have the attributes.

  Write an algorithm and convert it to a java program

MN404- T1 2018 Fundamentals of Operating Systems and Programming Assignment - Write an Algorithm/flowchart and then convert it to a java program

  Calculate the new date by adding a fixed number of days

What I have done is the "ExtendedDate.java", which improved the "data.java" that the program will firstly check if the date input from users is valid then store it with the setDate method.

  WAP that takes integer as number of both rows and columns

Write a program ShiftNumbers.java that takes integer M as the number of both rows and columns for your 2D array. Create the same exact following 2D array.

  Information management with computing machines

1. The members of the first professional group devoted to information management with computing machines were known as:

  Create class called hospital and add all relevant attributes

Create a class called Hospital and add all the relevant attributes for the created class - Create a User's super class that contains all the properties common to the all the users that will be using the Hospital patient billing system.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd