2. PRG 421 Individual Week 1 Analyze Assignment
Resource:
• "Analyzing a Java™ Program Containing Abstract and Derived
Classes"
The purpose of creating an abstract class is to model an abstract
situation.
Example:
You work for a company that has different types of customers: domestic,
international, business partners, individuals, and so on. It well may be
useful for you to "abstract out" all the information that is common to all
of your customers, such as name, customer number, order history, etc.,
but also keep track of the information that is specific to different classes
of customer. For example, you may want to keep track of additional
information for international customers so that you can handle exchange
rates and customs-related activities, or you may want to keep track of
additional tax-, company-, and department-related information for
business customers.
Modeling all these customers as one abstract class ("Customer") from
which many specialized customer classes derive or inherit
("International Customer," "Business Customer," etc.) will allow you to
define all of that information your customers have in common and put it
in the "Customer" class, and when you derive your specialized customer
classes from the abstract Customer class you will be able to reuse all of
3. those abstract data/methods.This approach reduces the coding you have
to do which, in turn, reduces the probability of errors you will make. It
also allows you, as a programmer, to reduce the cost of producing and
maintaining the program.
In this assignment, you will analyze Java™ code that declares one
abstract class and derives three concrete classes from that one abstract
class. You will read through the code and predict the output of the
program.
Read through the linked Java™ code carefully.
Predict the result of running the Java™ code. Writeyour prediction into a
Microsoft® Word document, focusing specifically on what text you
think will appear on the console after running the Java™ code.
In the same Word document, answer the following question:
• Why would a programmer choose to define a method in an abstract
class, such as the Animal constructor method or the getName() method
in the linked code example, as opposed to defining a method as abstract,
such as the makeSound() method in the linked example?
Supporting Material: Week One Analyze Assignment Text File
**************************
PRG 421 Individual Week 1 Coding Assignment Bicycle
Demo
For more course tutorials visit
www.tutorialrank.com
4. PRG 421 Individual Week 1 Coding Assignment
Resources:
• "Lesson: Object-Oriented Programming Concepts" on The Java™
Tutorials website
• Downloadable starter code from the Oracle® website: Bicyle class and
BicycleDemo class
For this assignment, you will modify existing code to create a single
Java™ program named BicycleDemo.java that incorporates the
following:
• An abstract Bicycle class that contains private data relevant to all types
of bicycles (cadence, speed, and gear) in addition to one new static
variable: bicycleCount. The private data must be made visible via public
getter and setter methods; the static variable must be set/manipulated in
the Bicycle constructor and made visible via a public getter method.
• Two concrete classes named MountainBike and RoadBike, both of
which derive from the abstract Bicycle class and both of which add their
own class-specific data and getter/setter methods.
Read through the "Lesson: Object-Oriented Programming Concepts" on
The Java™ Tutorials website.
5. Download the linked Bicycle class, or cut-and-paste it at the top of a
new Java™ project named BicycleDemo.
Download the linked BicycleDemoclass, or cut-and-paste it beneath the
Bicycle class in the BicycleDemo.java file.
Optionally, review this week's Individual "Week One Analyze
Assignment," to refresh your understanding of how to code derived
classes.
Adapt the Bicycle class by cutting and pasting the class into the
NetBeans editor and completing the following:
• Change the Bicycle class to be an abstract class.
• Add a private variable of type integer named bicycleCount, and
initialize this variable to 0.
• Change the Bicycle constructor to add 1 to the bicycleCount each time
a new object of type Bicycle is created.
• Add a public getter method to return the current value of bicycleCount.
• Derive two classes from Bicycle: MountainBike and RoadBike. To the
MountainBike class, add the private variables tireTread (String) and
mountainRating (int). To the RoadBike class, add the private variable
maximumMPH (int).
Using the NetBeans editor, adapt the BicycleDemo class as follows:
• Create two instances each of MountainBike and RoadBike.
• Display the value of bicycleCount on the console.
6. Comment each line of code you add to explain what you added and why.
Be sure to include a header comment that includes the name of the
program, your name, PRG/421, and the date.
Rename your JAVA file to have a .txt file extension.
Submit your TXT file to the Assignment Files tab.
**************************
PRG 421 Individual Week 2 Analyze Assignment
For more course tutorials visit
www.tutorialrank.com
PRG 421 Individual Week 2 Analyze Assignment
Resource:
• "Demonstrate the Coding to Produce Output to a File" text file
For this assignment, you will analyze Java™ that presents instructional
text on the console, accepts user input, and then creates a file based on
that user input.
Read the linked Java™ code carefully.
Then, answer the following questions in a Microsoft® Word file:
7. • As you run the program in NetBeans the first time, at the prompt (the
program will pause for input) type abc Return def Return ghi
Ctrl+Shift+Del. What is the result?
• As you run the program in NetBeans the second time, at the prompt
(the program will pause for input) type 123 Ctrl+Shift +Del. What is the
result?
• What happens if the file Data.txt already exists when you run the
program?
• What happens if the file Data.txt does not already exist when you run
the program?
Submit your Word file to the Assignment Files tab.
**************************
PRG 421 Individual Week 2 Coding Assignment
For more course tutorials visit
www.tutorialrank.com
PRG 421 Individual Week 2 Coding Assignment
Resource:
• "Console/File Input and Output" text file
8. For this assignment, you will build on "starter" code to create a Java™
program that prompts the user for input, accepts user input, and produces
both console and file output.
Copy the linked code to a JAVA file.
Add Java® code based on the comments inside the code.
Note: Refer to this week's Individual "Week Two Analyze Assignment"
for model code you can adapt to meet this assignment's requirements.
Test, debug, and run your code using the NetBeans editor to make sure it
meets the program requirements.
Save your JAVA file with a .txt extension.
Submit your TXT file to the Assignment Files tab.
**************************
PRG 421 Individual Week 3 Analyze Assignment
For more course tutorials visit
www.tutorialrank.com
PRG 421 Individual Week 3 Analyze Assignment
Resource:
9. • "Java Code That Sorts, Extracts Data and Saves It To a Collection" text
file
For this assignment, you will analyze code that uses a file input stream
and a file output stream.
Read through the linked Java™ code.
In a Microsoft® Word document, answer the following questions:
• Could this program be run as is? If not, what is it lacking?
• Does this program modify the contents of an input stream? In what
way?
• What are the results of running this code?
Submit your completed Word document to the Assignment Files tab.
**************************
PRG 421 Individual Week 3 Coding Assignment
For more course tutorials visit
www.tutorialrank.com
PRG 421 Individual Week 3 Coding Assignment
For this assignment, you will develop "starter" code. After you finish,
your code should access an existing text file that you have created,
10. create an input stream, read the contents of the text flie, sort and store
the contents of the text file into an ArrayList, then write the sorted
contents via an ouput stream to a separate output text file.
Copy and paste the following Java™ code into a JAVA source file in
NetBeans:
import java.io.BufferedReader;
import java.io.BufferedWriter;
public class Datasort {
public static void main (String [] args) {
File fin = // input file
Filefout = // create an out file
// Java FileInputStream class obtains input bytes from a file
FileInputStreamfis = new FileInputStream(fin);
// buffering characters so as to provide for the efficient reading of
characters, arrays, and lines
BufferedReader in = new BufferedReader(new InputStreamReader(fis));
11. // declare an array in-line, ready for the sort
String aLine;
ArrayList al = new ArrayList ();
int i = 0;
while ((aLine = in.readLine()) != null) {
// set the sort for values is greater than 0
Collections.sort(al); // sorted content to the output file
{
System.out.println(s);
}
// close the 2 files
}
}
Add code as indicated in the comments.
12. Note: Refer to this week's Individual assignment, "Week Three Analyze
Assignment," and to Ch. 8, "IO," in OCP: Oracle® Certified
Professional Java® SE 8 Programmer II Study Guide.
Run and debug your modified program in NetBeans until it satisfies the
requirements described above.
Save your finalized JAVA file with a .txt extension.
Submit your TXT file to the Assignment Files tab.
**************************
PRG 421 Individual Week 4 Analyze Assignment
For more course tutorials visit
www.tutorialrank.com
PRG 421 Individual Week 4 Analyze Assignment
Deadlock occurs when no processing can occur because two processes
that are waiting for each other to finish. For example, imagine that two
processes need access to a file or database table row in order to
complete, but both processes are attempting to access that resource at the
same time. Neither process can complete without the other releasing
access to the required resource, so the result is deadlock.
Read and analyze code in the linked document that spawns two different
threads at the same time.
13. In a Microsoft® Word file, predict the results of executing the program,
and identify whether a deadlock or starvation event will occur and, if so,
at what point in the code.
Submit your Word file to the Assignment Files tab.
**************************
PRG 421 Individual Week 4 Coding Assignment
For more course tutorials visit
www.tutorialrank.com
PRG 421 Individual Week 4 Coding Assignment
Resource:
• "The Locale Object" text file
For this assignment, you will develop Java™ code that relies on
localization to format currencies and dates.
In NetBeans, copy the linked code to a file named "Startercode.java".
Read through the code carefully and replace all occurrences of "___?
___" with Java™ code.
Note: Refer to "Working with Dates and Times" in Ch. 5, "Dates,
Strings, and Localization," in OCP: Oracle® Certified Professional
Java® SE 8 Programmer II Study Guide for help.
Run and debug your JAVA file to ensure that your solution works.
14. Save your JAVA file with a .txt extension.
Submit your TXT file to the Assignment Files tab.
**************************
PRG 421 Individual Week 5 Analyze Assignment
For more course tutorials visit
www.tutorialrank.com
PRG 421 Individual Week 5 Analyze Assignment
Resource:
• "Analyze and Document JDBC API Calls" text file
For this assignment, you will analyze code that uses the JDBC API to
access a database, retrieve data, and compose output based on that data.
You will then comment the code to reflect the purpose and expected
results of the code.
Download the linked TXT file, and read through the Java™ code
carefully.
Add your name, instructor's name, and today's date to the header
comment.
Replace the five comment placeholders with succinct comments that
explain and predict the results of the Java™ statement(s) that directly
follow the comment placeholders.
15. Submit the updated TXT file containing your comments to the
Assignment Files tab
**************************
PRG 421 Individual Week 5 Coding Assignment
For more course tutorials visit
www.tutorialrank.com
PRG 421 Individual Week 5 Coding Assignment
Resource:
• "Starter Code to Access Tables via JDBC" text file
For this assignment, you will create Java™ code that accesses a
relational database, requests data, and then analyzes and displays a
portion of that data.
Imagine a MySQL relational database schema named COMPANY_DB
containing two tables, employee_table and payroll_table, such that the
records in each of the tables is as follows:
• employee_table:
Emp id FName LNname Addr City State Zip
100 Jack Smith 123 North Topeka KS 66603
101 Joe Apple 4 Street Denver CO 80202
111 Nancy Good 45 SW Hartford CT 06103
16. 121 Tom Whatever 89 NE Dover DE 19901
122 Jim Thompson 789 W 95 Albany NY 12207
123 Tommy Boyson 154 Bolt Boston MA 02201
125 John Jones 47 West Lincoln NE 68502
• payroll_table:
Emp id Paysch 401k Spouse
100 BiWk yes yes
101 BiWk yes yes
111 Monthly no no
121 Wkly pending yes
122 Wkly yes no
123 Monthly pending no
125 Monthly no yes
The credentials you will need to access the database which holds both of
the tables are as follows:
• Host string = localhost:3306
• Username = student
• Password = prg421
Copy and paste the linked Java™ "starter" code into the NetBeans editor
and save as a JAVA file.
17. Add Java™ statements to the file to accomplish the following:
• Establish a connection to the database
• Query the database, joining the two tables on the Emp_id field
• Display your name and today's date on the console along with the
following returned database results:
o employee identification number
o first and last name
o state
o payroll schedule
o 401k plan
• Close the database connection
Identify and correct any compile-time errors that exist in the starter
code.
Note: Because you will not be connecting to an actual database, some
compiler errors will remain.
After you finish, rename your JAVA file with a .txt extension using the
following naming convention:
• PRG421_Week5CodingAssignment_LastnameFirstname.txt.
Submit your TXT file to the Assignment Files tab.
**************************
PRG 421 Week 1 Individual Singleton Pattern Program
For more course tutorials visit
18. www.tutorialrank.com
Individual: Singleton Pattern Program
Write a Java program (non-GUI preferred) to
demonstrate the Singleton pattern.
The key parts of the singleton pattern
are:
A private static variable to store the single
instance called the singleton
A public static method for callers to get a
reference to the instance
A private constructor so no callers can instantiate
the object directly
19. Using these key parts,
write a Java program that will allow a user of the program to assign only
one
runner to each of the 8 lanes of running track in a field.
Include a brief documentation (in the code or in a separate document) to
explain
the input (if any), processing and output of the program.
Submit your assignment using the Assignment Files tab above.
**************************
PRG 421 Week 2 Individual ArrayList Program
For more course tutorials visit
www.tutorialrank.com
PRG 421 Week 2 Individual ArrayList Program
Week 2 Individual: ArrayList Program
20. Write a Java program (non-GUI preferred) to
demonstrate the use of an ArrayList.
The program should allow a user to do the
following:
Add, edit, delete different types of animals
Select an animal, and the corresponding
characteristics will be displayed (such as color, vertebrate or
invertebrate, can swim, etc.)
The program must use ArrayList(s) to work with these
animal objects.
Include a brief documentation (in the code or in a separate document) to
explain
21. the input (if any), processing and output of the program.
Submit your assignment using the Assignment Files tab above
**************************
PRG 421 Week 3 Individual Iterator Program
For more course tutorials visit
www.tutorialrank.com
PRG 421 Week 3 Individual Iterator Program
Week 3 Individual: Iterator Program
Write a Java program (non-GUI preferred) to
demonstrate the use of Iterator.
The program should allow a user to do the
following:
22. Allow the reading of a collection of animal objects
from an external file.
Output on screen the content of a collection of
animal objects.
Use Iterator to achieve these goals.
Include a brief documentation (in the code or in a separate document) to
explain
the input (if any), processing and output of the program.
Submit your assignment using the Assignment Files tab above.
**************************
PRG 421 Week 4 Individual JDBC Program
For more course tutorials visit
www.tutorialrank.com
PRG 421 Week 4 Individual JDBC Program
23. Week 4 Individual: JDBC Program
Write a Java program (non-GUI preferred) to demonstrate
the use of JDBC.
The program should allow a user to do the
following:
Write a list of animal and its characteristics to a
database using JDBC
Display the characteristics of an animal when that
animal is selected.
Include a brief documentation (in the code or in a separate document) to
explain
the input (if any), processing and output of the program.
24. Submit your assignment using the Assignment Files tab above.
Note from Instructor:
To assist, I have included a demo file
“JavaDB week 4 Demo code” of a database and installation
instructions.
PLEASE USE THIS DEMO DATABASE. I have had
students want to use other database engines and it makes it very difficult
when
that happens. This is not a class in different databases, but just how to
connect Java to a database, and thus we are going to use the simplest one
possible, mySQL.
**************************
25. PRG 421 Week 5 Individual Concurrent Programming
For more course tutorials visit
www.tutorialrank.com
PRG 421 Week 5 Individual Concurrent Programming
Week 5 Individual: Concurrent Programming
Write a
Java program (non-GUI preferred) that has a method named atomic().
Demonstrate in
the program how two threads can, sometimes, invoke atomic()
concurrently.
Create a
second version of the program in which the two threads cannot invoke
atomic
26. concurrently.
Submit both
programs using the Assignment Files tab above.
To
assist, I have included a demo file of a multi-thread program.
Remember
that the ideal program demonstrates threading in action.
**************************