Posted: February 28th, 2023

Ch. 1 Windows Command Prompt HW

Homework Instructions:  Refer to the Ch 01 PDF file for the instructions.

© 2022 Linda Shepherd 1
© 2015 Deitel, Paul and Harvey, Java How to Program 10th Edition Late Objects Version, Pearson Education

Inc.: Tic-Tac-Toe, Painter, Ch 1 pp 22-25.

IS 2063 Chapter 1: Using Windows Command Prompt to Run Java Programs

Purpose: To familiarize you with how to execute a Java application from the Windows Command
Prompt.

Prep Work:
1. You should’ve already installed DrJava and Amazon Corretto 8 on your own computer per

instructions for Software Option 1 given to you in CHAPTER COURSEWORK >> First Things
First (Getting Started).

2. Otherwise, UTSA IT has installed DrJava and Amazon Corretto 8 on UTSA’s VDI (Virtual Desktop
Infrastructure). Please refer to Software Option 2 in CHAPTER COURSEWORK >> First
Things First (Getting Started).

3. Download the zip file posted with these instructions. Save it to a folder for chapter 1. Extract its
content and review the file on Command Prompt commands and how to change directories in
Command Prompt. All you have to do is point to the zip file, right click, and “Extract Here”.
During the extraction make sure your files are not nested within multiple folders of the same
name.

Instructions:

1. Open a Word document saved with your LastNameFirstInitialYourSecNoCmdPrompt. Example:

JonesE001CmdPrompt. Create 2 sections. One called TicTacToeTest with screenshots for
running the program and similarly for Painter.

2. TicTacToeTest Screenshots Section
a. In Command Prompt show that you can navigate to the correct drive, then the correct folder

containing the program, and type the command to run the program, but don’t hit enter just yet.
i. Screenshot the navigation commands in the Command Prompt window and insert in the

section of the Word document for TicTacToeTest.
ii. Now, hit enter to Run the program.

b. First Move: Keep in mind that the computing begins counting at 0, so 0 is row or column 1; 1
is row or column 2; 2 is row or column 3.
i. Player 1 marks row 3, column 2.
ii. Player 2 marks row 1, column 3.
iii. Screenshot each player’s move including the row and column entries, insert into the Word

document.
c. Second Move:

i. Player 1 marks row 2, column 2.
ii. Player 2 marks row 1, column 2.
iii. Screenshot each player’s move including the row and column entries, insert into the Word

document
3. Painter Screenshots Section

a. Go to the Deitel Ch 1 PDF in the attached zip file for pp 22-25 and follow the instructions from
numbers 4 to 9.

b. Screenshot the Painter window (must include the title bar with the app name, dropdown lists
and buttons) showing each step of how you draw the face per the instructions in 4a and insert
in the section of the Word document for Painter.

© 2022 Linda Shepherd 2
© 2015 Deitel, Paul and Harvey, Java How to Program 10th Edition Late Objects Version, Pearson Education

Inc.: Tic-Tac-Toe, Painter, Ch 1 pp 22-25.

Submission Requirements: Upload your Word document with the screenshots to Blackboard by
the due date.

Files:
• Zip file content:

o Tic-Tac-Toe and painter folders that have the programs you’ll be running, and a
o document called Command Prompt Commands and Changing Directories that

instructs you on how to run Windows Command Prompt, navigate to drives and directories,
and compile and run your Java programs, and

o Deitel Ch 1 PP 22-25 on running the Painter program.

Chapter 1/Command Prompt Commands and Changing Directories

© Linda Shepherd, Dept. of ISCS, Alvarez COB, UTSA. 1

Windows Command Prompt Commands and Changing Directories
Click Above Link for Different MS-DOS Commands

1. The System Environment variable settings you made to your computer enable you to compile or run a Java

program at the Command Prompt window.

2. Go to the folder containing the Java files to be compiled or run.

Click ATM in the path field until it’s highlighted
and the path is visible.

C:\Users\YourComputersName\Desktop\ATM

In place of the path type cmd. The Windows
Command Prompt Window defaulted to the
highlighted path (directory).

3. OR Clicking Start, Run, then type cmd in the Run window.

4. OR Clicking Start, Programs, Accessories, then Command Prompt.

5. javac is a Java command used from the Command Prompt to compile a source code program. Your source
code programs end with a .java file extension. Source code files have to be compiled first to flush out any
syntax errors (language errors). If there are no errors, then javac produces a .class version of the .java file.

6. java is a Java command used from the Command Prompt to run/execute the bytecode or .class file. Below
are the formats for the Java commands.

a. javac NameOfProgram.java

b. java NameOfProgram

Compiles a Java source file – requires .java file extension

Runs a .class bytecode file – requires no file extension

https://www.computerhope.com/msdos.htm#02

© Linda Shepherd, Dept. of ISCS, Alvarez COB, UTSA. 2

HOW TO NAVIGATE TO DRIVES AND DIRECTORIES

Type the drive letter for your jump drive
followed by a colon.

Use cd\ (no space after) or cd (space after) followed by the name of the folder containing your Java files.

You are now in the ATM folder (directory) on the G: drive. Ready to use javac or java .

Navigating to the Correct Folder: Use OneDrive in path if files are stored on it. abc123 applies to school computers.

Navigating to Your Jump/Flash Drive

C:\Documents and Settings\ abc123>cd\Documents and Settings\abc123\My Documents\ATM

C:\Documents and Settings\ abc123\My Documents\ATM>

 Use cd\ followed by all the folder and subfolder names until you get to your Java files.

You are now in the ATM folder (directory) that is within the folder on the
drive for your computer or the school’s computer. Keep in mind the path
is dictated by where you downloaded/saved/unzipped the ATM folder.
Now you’re ready to use javac (to compile) or java (to run) a Java file.

C:\Documents and Settings\ abc123>cd My Documents\ATM

 Use cd followed by the folder and subfolder names within the current path. OR

C:\Documents and Settings\ abc123\cd Desktop

C:\Documents and Settings\ abc123\Desktop>

Use cd Desktop to change to the Desktop.

Use cd.. to get back to previous directory. cd\ goes back to your root directory.

Use dir to list what is in the directory. Use cls to
clear the screen.

OR C:\Users\YourComputersName\OneDrive\Desktop\ATM

Chapter 1/Deitel Ch 1 PP 22-25

22 Chapter I Introduction to Computers . the Internet and Java

Select a shape

Specify
whether a

rectangle or
ova l is filled

with color

Close
button

a) Painter app runn ing on Windows

b) Painter app runn ing on Linux.

c) Painter app running on OS X.

Close – F{:l n n Painter
button 1…:..-__:.-~——;..;:;;=———–1

~lack __jJ (, Line _i) Cl Filled ~do

0 0)

Fig. 1.11 I Painter app executing in Windows 7. Lin ux and OS X.

Close button

entire drawing

Undo the last
shape that was
added to the
drawing

[Note: Java commands are case sensitive-that is, uppercase letters are different
from lowercase letters. It’s important to type the name of this application as Paint­
er with a capital P. Otherwise, the application will not execute. Specifying the
. class extension when using the java command results in an error. Also, if you
receive the error message, “Exception in thread “main” java .lang. NoCl ass­
DefFoundError: Painter ,” your system has a CLASSPATH problem. Please refer to

the Before You Begin section for instructions to help you ftx this problem.]

4. Drawing a filled yellow oval for the face. Select Yellow as the drawing color, Oval ‘
as the shape and check the Filled checkbox, then drag the mouse to draw a large

oval (Fig. 1.12).

1. 10 Test-Driving a j ava Appli cation 23

~~~
1 • . … .. 1 ( ~· -· t • ) 0 Fil led [ Und~ J

(435,295)
l)

Fig. 1.1 2 I Drawing a fi lled yellow ova l for the face.

5. Drawing blue eyes. Select Blue as the drawing color, then draw two small ovals as
the eyes (Fig. 1.1 3).

GJ[§l~

l)

(37 1,131)

Fig. 1. 13 I Drawing blue eyes.

6. D rawing black eyebrows and a nose. Select Black as the drawing color and Line
as the shape, then draw eyebrows and a nose (Fig. 1.14) . Lines do not have fi ll ,
so leaving the Filled checkbox checked has no effect when drawing lines.

24 Chapter I Introduction to Computers , the Internet and Java

Fig. 1.14 I Drawing black eyebrows and a nose.

7. Drawing a magenta mouth. Select Magenta as the drawing color and Oval as the

shape, then draw a mouth (Fig. 1.15).

(Magenta ! • ]( ‘-ov_a_t _……_

(435,169)

Fig. 1.1 S I Drawing a magenta mouth.

8. Drawing a yellow oval on the mouth to make a smile. Select Yellow as the drawing
color, then draw an oval to change the magenta oval into a smile (Fig. 1.16) .

——

(328,252)

1. 1 I Internet and World Wide Web :ZS

l£]@~

[ C l~ar J

——

Fig. 1.16 I Drawing a yel low oval on the mouth to make a sm ile.

9. Exiting the Painter application. To exit the Painter application, click the Close
button (in the window’s upper-right corner on Windows and the upper-left cor­
ner on Linux and OS X). Closing the window causes the Painter application to
terminate.

1.11 Internet and World Wide Web
In the late 1960s, ARP A-the Advanced Research Projects Agency of the United States De­
partment of Defense-rolled out plans for networking the main computer systems of ap­
proximately a dozen ARP A-funded universities and research institutions. The computers
were to be connected with communications lines operating at speeds on the order of 50,000
bits per second, a stunning rate at a time when most people (of the few who even had net­
working access) were connecting over telephone lines to computers at a rate of 110 bits per
second. Academic research was about to rake a giant leap forward. ARPA proceeded to im­
plement what quickly became known as the ARPANET, the precursor to today’ s Internet.
Today’s fastest Internet speeds are on the order of billions of bits per second with trillion­
bit-per-second speeds on the horizon!

Things worked out differently from the original plan. Although the ARPANET
enabled researchers to network their computers, irs main benefit proved to be the capa­
bility for quick and easy communication via what came to be known as electronic mail (e­
mail). This is true even on today’s Internet, with e-mail, instant messaging, file transfer
and social media such as Facebook and Twitter enabling billions of people worldwide to
communicate quickly and easily.

The protocol (set of rules) for communicating over the ARPANET became known as
the Transmission Control Protocol (TCP) . TCP ensured that messages, consisting of
sequentially numbered pieces called packets, were properly routed from sender to receiver,
arrived intact and were assembled in the correct order.

Chapter 1/painter/DrawFrame.class
public
synchronized
class DrawFrame
extends javax.swing.JFrame
implements java.awt.event.ItemListener, java.awt.event.ActionListener {

private java.awt.Color[]
colors;

private String[]
colorNames;

private String[]
shapes;

private DrawPanel
drawPanel;

private javax.swing.JButton
undoButton;

private javax.swing.JButton
clearButton;

private javax.swing.JComboBox
colorChoices;

private javax.swing.JComboBox
shapeChoices;

private javax.swing.JCheckBox
filledCheckBox;

public void DrawFrame();

public void
itemStateChanged(java.awt.event.ItemEvent);

public void
actionPerformed(java.awt.event.ActionEvent);
}

Chapter 1/painter/DrawFrame.java

Chapter 1/painter/DrawFrame.java

// GCS Exercise 14.17 Solution: DrawFrame.java

// Program that creates a panel for the user to draw shapes.

// Allows the user to choose the shape and color.

import
 java
.
awt
.
BorderLayout
;

import
 java
.
awt
.
Color
;

import
 java
.
awt
.
FlowLayout
;

import
 java
.
awt
.
event
.
ActionEvent
;

import
 java
.
awt
.
event
.
ActionListener
;

import
 java
.
awt
.
event
.
ItemEvent
;

import
 java
.
awt
.
event
.
ItemListener
;

import
 javax
.
swing
.
JButton
;

import
 javax
.
swing
.
JCheckBox
;

import
 javax
.
swing
.
JComboBox
;

import
 javax
.
swing
.
JFrame
;

import
 javax
.
swing
.
JLabel
;

import
 javax
.
swing
.
JPanel
;

public
 
class
 
DrawFrame
 
extends
 
JFrame

   
implements
 
ItemListener
,
 
ActionListener

{

   
// Array of possible colors

   
private
 
Color
[]
 colors 
=
 
{
Color
.
BLACK
,
 
Color
.
BLUE
,
 
Color
.
CYAN
,

      
Color
.
DARK_GRAY
,
 
Color
.
GRAY
,
 
Color
.
GREEN
,
 
Color
.
LIGHT_GRAY
,

      
Color
.
MAGENTA
,
 
Color
.
ORANGE
,
 
Color
.
PINK
,
 
Color
.
RED
,
 
Color
.
WHITE
,

      
Color
.
YELLOW
};

   

   
// Array of names corresponding to the possible colors

   
private
 
String
[]
 colorNames 
=
 
{
“Black”
,
 
“Blue”
,
 
“Cyan”
,
 
“Dark Gray”
,

      
“Gray”
,
 
“Green”
,
 
“Light Gray”
,
 
“Magenta”
,
 
“Orange”
,
 
“Pink”
,
 
“Red”
,

      
“White”
,
 
“Yellow”
};

   

   
// Array of possible shapes

   
private
 
String
[]
 shapes 
=
 
{
“Line”
,
 
“Oval”
,
 
“Rectangle”
};

   

   
private
 
DrawPanel
 drawPanel
;
 
// panel that handles the drawing

   

   
private
 
JButton
 undoButton
;
 
// button to undo the last shape drawn

   
private
 
JButton
 clearButton
;
 
// button to clear all shapes

   
private
 
JComboBox

 colorChoices
;
 
// combo box for selecting the color

   
private
 
JComboBox

 shapeChoices
;
 
// combo box for selecting shapes

   
private
 
JCheckBox
 filledCheckBox
;
 
// check box to toggle filled shapes

   

   
// constructor

   
public
 
DrawFrame
()

   
{

      
super
(
“Painter”
);

      

      
// create a panel to store the components at the top of the frame

      
JPanel
 topPanel 
=
 
new
 
JPanel
();

      
// create a combobox for choosing colors

      colorChoices 
=
 
new
 
JComboBox

(
colorNames
);

      colorChoices
.
addItemListener
(
this
);

      topPanel
.
add
(
colorChoices
);

      
// create a combobox for choosing shapes

      shapeChoices 
=
 
new
 
JComboBox

(
shapes
);

      shapeChoices
.
addItemListener
(
this
);

      topPanel
.
add
(
shapeChoices
);
      

      
// create a checkbox to determine whether the shape is filled

      filledCheckBox 
=
 
new
 
JCheckBox
(
“Filled”
);

      filledCheckBox
.
addItemListener
(
this
);

      topPanel
.
add
(
filledCheckBox
);

      
// create a button for clearing the last drawing

      undoButton 
=
 
new
 
JButton
(
“Undo”
);

      undoButton
.
addActionListener
(
this
);

      topPanel
.
add
(
undoButton
);

      

      
// create a button for clearing all drawings

      clearButton 
=
 
new
 
JButton
(
“Clear”
);

      clearButton
.
addActionListener
(
this
);

      topPanel
.
add
(
clearButton
);

      
// add the top panel to the frame

      add
(
topPanel
,
 
BorderLayout
.
NORTH
);

      

      
// create a label for the status bar

      
JLabel
 statusLabel 
=
 
new
 
JLabel
(
“(0,0)”
);

      
// add the status bar at the bottom

      add
(
statusLabel
,
 
BorderLayout
.
SOUTH
);

            

      
// create the DrawPanel with its status bar label

      drawPanel 
=
 
new
 
DrawPanel
(
statusLabel
);

      

      add
(
drawPanel
);
 
// add the drawing area to the center      

   
}
 
// end DrawFrame constructor

   
// handle selections made to a combobox or checkbox

   
public
 
void
 itemStateChanged
(
ItemEvent
 e
)

   
{

      
if
 
(
e
.
getSource
()
 
==
 shapeChoices
)
 
// choosing a shape

         drawPanel
.
setShapeType
(
shapeChoices
.
getSelectedIndex
());

      
else
 
if
 
(
e
.
getSource
()
 
==
 colorChoices
)
 
// choosing a color

         drawPanel
.
setDrawingColor
(

            colors
[
colorChoices
.
getSelectedIndex
()]);

      
else
 
if
 
(
e
.
getSource
()
 
==
 filledCheckBox
)
 
// filled/unfilled

         drawPanel
.
setFilledShape
(
filledCheckBox
.
isSelected
());

   
}
 
// end method itemStateChanged

   
// handle button clicks

   
public
 
void
 actionPerformed
(
ActionEvent
 e
)

   
{

      
if
 
(
e
.
getSource
()
 
==
 undoButton
)

         drawPanel
.
clearLastShape
();

      
else
 
if
 
(
e
.
getSource
()
 
==
 clearButton
)

         drawPanel
.
clearDrawing
();

   
}
 
// end method actionPerformed

}
 
// end class DrawFrame

/**************************************************************************

 * (C) Copyright 1992-2014 by Deitel & Associates, Inc. and               *

 * Pearson Education, Inc. All Rights Reserved.                           *

 *                                                                        *

 * DISCLAIMER: The authors and publisher of this book have used their     *

 * best efforts in preparing the book. These efforts include the          *

 * development, research, and testing of the theories and programs        *

 * to determine their effectiveness. The authors and publisher make       *

 * no warranty of any kind, expressed or implied, with regard to these    *

 * programs or to the documentation contained in these books. The authors *

 * and publisher shall not be liable in any event for incidental or       *

 * consequential damages in connection with, or arising out of, the       *

 * furnishing, performance, or use of these programs.                     *

 **************************************************************************/

Chapter 1/painter/DrawPanel$1.class
synchronized
class DrawPanel$1 {
}

Chapter 1/painter/DrawPanel$MouseHandler.class
synchronized
class DrawPanel$MouseHandler
extends java.awt.event.MouseAdapter
implements java.awt.event.MouseMotionListener {

private void DrawPanel$MouseHandler(DrawPanel);

public void
mousePressed(java.awt.event.MouseEvent);

public void
mouseReleased(java.awt.event.MouseEvent);

public void
mouseDragged(java.awt.event.MouseEvent);

public void
mouseMoved(java.awt.event.MouseEvent);
}

Chapter 1/painter/DrawPanel.class
public
synchronized
class DrawPanel
extends javax.swing.JPanel {

private MyShape[]
shapes;

private int
shapeCount;

private int
shapeType;

private MyShape
currentShape;

private java.awt.Color
currentColor;

private boolean
filledShape;

private javax.swing.JLabel
statusLabel;

public void DrawPanel(javax.swing.JLabel);

public void
paintComponent(java.awt.Graphics);

public void
setShapeType(int);

public void
setDrawingColor(java.awt.Color);

public void
clearLastShape();

public void
clearDrawing();

public void
setFilledShape(boolean);
}

Chapter 1/painter/DrawPanel.java

Chapter 1/painter/DrawPanel.java

// GCS Exercise 14.17 Solution: DrawPanel.java

// JPanel that allows the user to draw shapes with the mouse. 

import
 java
.
awt
.
Color
;

import
 java
.
awt
.
Graphics
;

import
 java
.
awt
.
event
.
MouseAdapter
;

import
 java
.
awt
.
event
.
MouseEvent
;

import
 java
.
awt
.
event
.
MouseMotionListener
;

import
 javax
.
swing
.
JLabel
;

import
 javax
.
swing
.
JPanel
;

public
 
class
 
DrawPanel
 
extends
 
JPanel

{

   
private
 
MyShape
[]
 shapes
;
 
// array containing all the shapes

   
private
 
int
 shapeCount
;
 
// total number of shapes

   
private
 
int
 shapeType
;
 
// the type of shape to draw

   
private
 
MyShape
 currentShape
;
 
// the current shape being drawn

   
private
 
Color
 currentColor
;
 
// the color of the shape

   
private
 
boolean
 filledShape
;
 
// whether this shape is filled

   

   
private
 
JLabel
 statusLabel
;
 
// label displaying mouse coordinates

   

   
// constructor

   
public
 
DrawPanel
(
JLabel
 status
)

   
{

      shapes 
=
 
new
 
MyShape
[
100
];
 
// create the array

      shapeCount 
=
 
0
;
 
// initially we have no shapes

      

      setShapeType
(
0
);
 
// initially draw lines

      setDrawingColor
(
Color
.
BLACK
);
 
// start drawing with black

      setFilledShape
(
false
);
// not filled by default

      currentShape 
=
 
null
;
 
// not drawing anything initially

            

      setBackground
(
Color
.
WHITE
);
 
// set a white background

      

      
// add the mouse listeners

      
MouseHandler
 mouseHandler 
=
 
new
 
MouseHandler
();

      addMouseListener
(
mouseHandler
);

      addMouseMotionListener
(
mouseHandler
);

      

      
// set the status label for displaying mouse coordinates

      statusLabel 
=
 status
;

   
}
 
// end DrawPanel constructor

   
// draw shapes using polymorphism

   
public
 
void
 paintComponent
(
Graphics
 g
)

   
{

      
super
.
paintComponent
(
g
);

      

      
for
 
(
int
 i 
=
 
0
;
 i 
<
 shapeCount
;
 i
++
)

         shapes
[
i
].
draw
(
g
);

      

      
if
 
(
currentShape 
!=
 
null
)

         currentShape
.
draw
(
g
);

   
}
 
// end method paintComponent

   
// sets the type of shape to draw

   
public
 
void
 setShapeType
(
int
 shapeType
)

   
{

      
if
 
(
shapeType 

 
2
)

         shapeType 
=
 
0
;

      

      
this
.
shapeType 
=
 shapeType
;

   
}
 
// end method setShapeType

   

   
// sets the drawing color

   
public
 
void
 setDrawingColor
(
Color
 c
)

   
{

      currentColor 
=
 c
;

   
}
 
// end method setDrawingColor

   

   
// clears the last shape drawn

   
public
 
void
 clearLastShape
()

   
{

      
if
 
(
shapeCount 
>
 
0
)

      
{

         shapeCount

;

         repaint
();

      
}
 
// end if

   
}
 
// end method clearLastShape

   

   
// clears all drawings on this panel

   
public
 
void
 clearDrawing
()

   
{

      shapeCount 
=
 
0
;

      repaint
();

   
}
 
// end method clearDrawing

   
// sets whether to draw a filled shape

   
public
 
void
 setFilledShape
(
boolean
 isFilled
)

   
{

      filledShape 
=
 isFilled
;

   
}
 
// end method setFilledShape

   
// handles mouse events for this JPanel

   
private
 
class
 
MouseHandler
 
extends
 
MouseAdapter

      
implements
 
MouseMotionListener

   
{

      
// creates and sets the initial position for the new shape

      
public
 
void
 mousePressed
(
MouseEvent
 e
)

      
{

         
if
 
(
currentShape 
!=
 
null
)

            
return
;

         
// create the appropriate shape based on shapeType

         
switch
 
(
shapeType
)

         
{

            
case
 
0
:

               currentShape 
=
 
new
 
MyLine
(
e
.
getX
(),
 e
.
getY
(),

                  e
.
getX
(),
 e
.
getY
(),
 currentColor
);
      

               
break
;

            
case
 
1
:

               currentShape 
=
 
new
 
MyOval
(
e
.
getX
(),
 e
.
getY
(),

                  e
.
getX
(),
 e
.
getY
(),
 currentColor
,
 filledShape
);
      

               
break
;

            
case
 
2
:

               currentShape 
=
 
new
 
MyRect
(
e
.
getX
(),
 e
.
getY
(),

                  e
.
getX
(),
 e
.
getY
(),
 currentColor
,
 filledShape
);
      

               
break
;

         
}
 
// end switch

      
}
 
// end method mousePressed

      
// fixes the current shape onto the panel

      
public
 
void
 mouseReleased
(
MouseEvent
 e
)

      
{

         
if
 
(
currentShape 
==
 
null
)

            
return
;

         

         
// set the second point on the shape

         currentShape
.
setX2
(
e
.
getX
());

         currentShape
.
setY2
(
e
.
getY
());

         

         
// set the shape only if there is room in the array

         
if
 
(
shapeCount 
=
 
0
 
?
 x1 
:
 
0
);

   
}
 
// end method setX1

   
// get the x-coordinate of the first point

   
public
 
int
 getX1
()

   
{

     
return
 x1
;

   
}
 
// end method getX1

   
// set the x-coordinate of the second point

   
public
 
void
 setX2
(
int
 x2
)

   
{

     
this
.
x2 
=
 
(
x2 
>=
 
0
 
?
 x2 
:
 
0
);

   
}
 
// end method setX2

   
// get the x-coordinate of the second point

   
public
 
int
 getX2
()

   
{

     
return
 x2
;

   
}
 
// end method getX2

   
// set the y-coordinate of the first point

   
public
 
void
 setY1
(
int
 y1
)

   
{

     
this
.
y1 
=
 
(
y1 
>=
 
0
 
?
 y1 
:
 
0
);

   
}
 
// end method setY1

   
// get the y-coordinate of the first point

   
public
 
int
 getY1
()

   
{

     
return
 y1
;

   
}
 
// end method getY1

   
// set the y-coordinate of the second point

   
public
 
void
 setY2
(
int
 y2
)

   
{

     
this
.
y2 
=
 
(
y2 
>=
 
0
 
?
 y2 
:
 
0
);

   
}
 
// end method setY2

   
// get the y-coordinate of the second point

   
public
 
int
 getY2
()

   
{

     
return
 y2
;

   
}
 
// end method getY2

   
// set the color

   
public
 
void
 setColor
(
Color
 color
)

   
{

      myColor 
=
 color
;

   
}
 
// end method setColor

   
// get the color

   
public
 
Color
 getColor
()

   
{

      
return
 myColor
;

   
}
 
// end method getColor

   
// abstract draw method

   
public
 
abstract
 
void
 draw
(
Graphics
 g
);

}
 
// end class MyShape

/**************************************************************************

 * (C) Copyright 1992-2014 by Deitel & Associates, Inc. and               *

 * Pearson Education, Inc. All Rights Reserved.                           *

 *                                                                        *

 * DISCLAIMER: The authors and publisher of this book have used their     *

 * best efforts in preparing the book. These efforts include the          *

 * development, research, and testing of the theories and programs        *

 * to determine their effectiveness. The authors and publisher make       *

 * no warranty of any kind, expressed or implied, with regard to these    *

 * programs or to the documentation contained in these books. The authors *

 * and publisher shall not be liable in any event for incidental or       *

 * consequential damages in connection with, or arising out of, the       *

 * furnishing, performance, or use of these programs.                     *

 **************************************************************************/

Chapter 1/painter/Painter.class
public
synchronized
class Painter {

public void Painter();

public
static void
main(String[]);
}

Chapter 1/painter/Painter.java

Chapter 1/painter/Painter.java

// GCS Exercise 14.17 Solution: Painter.java

// Test application to display a DrawFrame

import
 javax
.
swing
.
JFrame
;

public
 
class
 
Painter

{

   
public
 
static
 
void
 main
(
String
[]
 args
)

   
{

      
DrawFrame
 application 
=
 
new
 
DrawFrame
();

      application
.
setDefaultCloseOperation
(
JFrame
.
EXIT_ON_CLOSE
);

      application
.
setSize
(
500
,
 
400
);

      application
.
setVisible
(
true
);

   
}
 
// end main

}
 
// end class Painter

/**************************************************************************

 * (C) Copyright 1992-2014 by Deitel & Associates, Inc. and               *

 * Pearson Education, Inc. All Rights Reserved.                           *

 *                                                                        *

 * DISCLAIMER: The authors and publisher of this book have used their     *

 * best efforts in preparing the book. These efforts include the          *

 * development, research, and testing of the theories and programs        *

 * to determine their effectiveness. The authors and publisher make       *

 * no warranty of any kind, expressed or implied, with regard to these    *

 * programs or to the documentation contained in these books. The authors *

 * and publisher shall not be liable in any event for incidental or       *

 * consequential damages in connection with, or arising out of, the       *

 * furnishing, performance, or use of these programs.                     *

 **************************************************************************/

Chapter 1/Tic-Tac-Toe/TicTacToe$Status.class
final
synchronized
enum TicTacToe$Status {

public
static
final TicTacToe$Status
WIN;

public
static
final TicTacToe$Status
DRAW;

public
static
final TicTacToe$Status
CONTINUE;

public
static
final TicTacToe$Status[]
values();

public
static TicTacToe$Status
valueOf(String);

private void TicTacToe$Status(String, int);

static void
();
}

Chapter 1/Tic-Tac-Toe/TicTacToe.class
public
synchronized
class TicTacToe {

private
final int
BOARDSIZE;

private int[][]
board;

private boolean
firstPlayer;

private boolean
gameOver;

public void TicTacToe();

public void
play();

public void
printStatus(int);

public TicTacToe$Status
gameStatus();

public void
printBoard();

public void
printSymbol(int, int);

public boolean
validMove(int, int);
}

Chapter 1/Tic-Tac-Toe/TicTacToeTest.class
public
synchronized
class TicTacToeTest {

public void TicTacToeTest();

public
static void
main(String[]);
}

Expert paper writers are just a few clicks away

Place an order in 3 easy steps. Takes less than 5 mins.

Calculate the price of your order

You will get a personal manager and a discount.
We'll send you the first draft for approval by at
Total price:
$0.00