Transcript Lecture 2

Lecture 2
Review
• To play with Turtle, we need to download
and install followings:
1. JDK 6
2. Dr. Java
3. Sample program (e.g. BookClass)
JDK 6
• Java Development Kit (version 6)
– It contains several tools, required to write
and test Java applications
– You may download
Windows Platform - Java(TM) SE Development Kit 6
http://java.sun.com/javase/downloads/index.jsp
Note: It is already installed in PC at computer lab
Dr. Java
• It is a software application, called IDE
(Integrated Development Environment)
– It supports us to develop an application
– It provides GUI builder, a text/program editor,
compiler, and debugger, etc.
For example
Visual Studio, JBuilder, FrontPage and DreamWeaver
– You may download
Windows App
http://drjava.org/
Sample Program
• Sample program contains Java program,
which enable us to play with Turtle
– You may download
bookClasses-8-21-06.zip
http://coweb.cc.gatech.edu/mediaComp-plan/101
– You have to extract the zip file into a directory
For example, you can create a directory named
“BookClass”, and extract files into the directory
And then …
• After open Dr.Java, you have to tell Dr.
Java where the sample program is
1
Select
Edit -> Preference
2
Click Add and specify
the directory of BookClass
• Don’t forget Homework 0
– Be prepare for doing homework and projects
at both computer lab and home !!!
Today
• Let’s talk about
– Object
– Class
– Instance
– Method
– Statement
Creating objects
World w1 = new World()
Create a new world, named w1
- This creates a window whose size is 640x480 pixels
640
480
Creating objects
Turtle t1 = new Turtle(w1)
Create a turtle, named t1, in the world w1
- as a default, a turtle is located at the center
where?
(320, 240)
Creating objects
You can create many worlds and turtles
World w1 = new World()
World w2 = new World()
Turtle t1 = new Turtle(w1)
Turtle t2 = new Turtle(w2)
Turtle t3 = new Turtle(w1)
W1
W2
T1, T3
T2
What is an object
• In real world
– Dog, Book, Cell phone, etc.
– Each object has a state and a behavior
For example, Dog
• State – He has name, color, breed, etc.
• Behavior – He is barking, wagging, etc.
– The world is viewed as a collection of objects
• Similarly, in Java programming world
– Object contains data and operations
For example, Turtle t1
• has name (t1) and color (green), etc.
• can move, can turn, etc.
Class and Object
• For example of phone, there
are many types of phones.
PHONE
• To create “your phone” (which
is an objects) we need a
blueprint to create it.
– Let’s call the blueprint PHONE
• The blueprint PHONE is
called class
• In java, we say that “your phone” is an instance
of class, known as PHONE
Class and Object
• Class is like a cookie cutter
• Many objects are created
from a class
• Using the new operator:
ClassName name = new ClassName();
• For example
Turtle
Object 1
Turtle
Object 2
Turtle t1 = new Turtle(w1)
Turtle: Class
Methods of Turtle
A Turtle has a pen
A Turtle can take actions such as move and turn
While a turtle moves, he draws a line with a pen
In Java
We call the actions as methods
e.g. move forward, and backward,
turn right and left, etc.
How to call method
ObjectName.MethodName()
ObjectName.MethodName(parameter)
For example, Turtle t1 = new Turtle(w1)
t1.forward()
t1.backward()
t1.turnRight()
t1.turnLeft()
t1.forward(200)
t1.turn(45)
…
Statement
Each instruction is called a statement
World w1 = new World();
t1.turnLeft();
A program is a collection of statements
Note: Please remember that
semi-colon is required
at the end of each statement
Lab
– Let’s play with Turtle
Warming up!!!
• Try to draw a triangle
Practice!!!
• Try to draw a pentagon
Practice!!!
• Try to draw a pentagon
180 x 3 / 5 =
108
72
Additional methods …
penUp()
- turtle will grab his pen up
penDown()
- turtle will put his pen down
moveTo(x,y)
- turtle will move to a position (x, y)
Additional methods … (more!!!)
hide()
- turtle will hide from the world
show()
- turtle will show up again
clearPath()
- clear all lines in the world
note: you have to minimize the window
setColor( java.awt.Color.xxx )
- turtle will change the pen color
- xxx will be RED, BLUE, GREEN, etc
Challenge
• Try to draw one triangle and one square
in the world