SUNU 6

advertisement
Bölüm 3 - Java Appletlerine Giriş
İçerik
3.1
3.2
3.3
3.4
3.5
3.6
Giriş
Java 2 Software Development Kit’den Birkaç Applet Örneği
Basit Java Appleti: Bir String ifadeyi Applete Yazmak
Çizgi Çizmek ve String Yazmak
İki Sayıyı Eklemek
Java Applet Internet ve World Wide Web Kaynakları
3.1
Giriş
• Applet
– Program aşağıdaki programların birisiyle çalışır.
• appletviewer (appletler için test aracı)
• Web browser (IE, Communicator)
– Applet içeren HTML (Hypertext Markup Language)
dökümanlarını çalıştırır.
3.2
Java 2 Software Development Kit’den
Birkaç Applet Örneği
• Örnek Appletler
– Java 2 Software Development Kit (J2SDK) içinde gelen
örnekelere bakacağız.
– Kaynak kodlar (.java dosyası)
• Yeni fikirlerin akla gelmesi açısından önemli
– J2SDK demo kalsörü içinde birçok örnek görülebilir.
– J2SDK aşağıdaki adresten indirilebilr.
java.sun.com/j2se/1.4.1/
3.2
Java 2 Software Development Kit’den
Birkaç Applet Örneği
• Appletlerin çalışması
– Komut isteminden appletinizin bulunduğu yere gelin.
c:\j2sdk1.4.1\demo\applets
cd appletDirectoryName
– Appleti çalıştıracak bir HTML dasyası olacak.
– Yazın “ appletviewer example1.html”
• appletviewer html dosyayı yükler.
• HTML dosyasından hangi appletin çalışacağına karar verilir.
– Applet çalışır, Reload ve Quit komutları Applet
menusünün altında bulunur.
3.2
Java 2 Software Development Kit’den
Birkaç Applet Örneği
• player "X“ olarak oyuna başlarsınız.
Fig. 3.2
Sample execution of applet TicTacToe.
3.2
Java 2 Software Development Kit’den
Birkaç Applet Örneği
Fig. 3.4
Sample execution of applet DrawTest.
Mouse hareketleri ile
şekillerin çizildiği alan.
Tıkalanılarak istediğiniz
renk seçilir. Bu GUI
componentleri radio
buttons olarak bilinir.
Component tıkalanır
Lines veya Points seçilir.
Bu GUI component
combo box, choice veya
drop-down list olarak
bilinir.
3.2
Java 2 Software Development Kit’den
Birkaç Applet Örneği
• Demonstrates 2D drawing capabilities built into Java2
Click a tab to
select a
twodimensional
graphics
demo.
Try changing
the options to
see their effect
on the
demonstration.
3.3
Basit Java Appleti: Bir String ifadeyi Applete
Yazmak
• Şimdi, kendi appletimizi oluşturacağız.
– Demodakiler gibi örnek yapmak için biraz zamanımız var.
– Birçok farklı teknikleri bilmemiz gerekir.
• Programımız
– Yeni bir applet oluşturacağız ve bu applet aşağıdakini
yazacak;
"Welcome to Java Programming!"
– Applet ve HTML dosyaları gösterilecek, sonra satır satır
inceleme yapacağız.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Fig. 3.6: WelcomeApplet.java
// A first applet in Java.
// Java packages
import java.awt.Graphics;
import javax.swing.JApplet;
import allows us to use
predefined classes (allowing
us to use applets and
import
class in
Graphics
graphics,
this case).
//
// import class JApplet
Java applet
public class WelcomeApplet extends JApplet {
extends allows us to inherit the
// draw text on applet’s background
public void paint( Graphics g )
capabilities of class JApplet.
{
// call superclass version of method paint
super.paint( g );
// draw a String at x-coordinate 25 and y-coordinate 25
g.drawString( "Welcome to Java Programming!", 25, 25 );
} // end method paint
} // end class WelcomeApplet
Method paint is guaranteed to
be called in all applets. Its first
line must be defined as above.
Program Output
3.3
1
2
Basit Java Appleti: Bir String ifadeyi Applete
Yazmak
// Fig. 3.6: WelcomeApplet.java
// A first applet in Java.
– Yorumlar
• Kaynak kodun ismi ve appletin tanıtımı
5
6
import java.awt.Graphics;
import javax.swing.JApplet;
// import class Graphics
// import class JApplet
– Önceden tanımlı sınıfları programımıza dahil etme
• Bir applet oluşturacağın zaman, JApplet sınıfını programına
dahil etmelisin. (package javax.swing)
• Grafik çizimi yapabilmek için Graphics sınıfını (package
java.awt) programına dahil etmelisin
– Çizgi, dörtgen, oval çizip yazı yazabilmek için
3.3
Basit Java Appleti: Bir String ifadeyi Applete
Yazmak
– Appletde de en az bir tane sınıf tanımlanmalı (uygulama
örneğinde olduğu gibi)
8
public class WelcomeApplet extends JApplet {
– class WelcomeApplet için class tanımlaması
• Anahtar kelime class dan sonra class ismi
– class isminden sonra extends
• Yeni classı türeteceğin ana class (JApplet)
– JApplet : superclass (ana class)
– WelcomeApplet : altclass (türemiş class)
• WelcomeApplet classı JApplet in method ve datalarına
sahip
3.3
Basit Java Appleti: Bir String ifadeyi Applete
Yazmak
8
public class WelcomeApplet extends JApplet {
– Sınıf JApplet bizim yerimize tanımlanmış
• Birisi kalkmış “Bir şeyin applet olması için neler lazım“
tanımlamış
– Applets 200 fazla metodda sahip!
• extends JApplet
– Miras yolu ile meodalarını yeniden yazmaya gerek
olmadan programıma dahil ediyorum.
• JApplet sınıfının tüm detayını bilmeme gerek yok.
3.3
Basit Java Appleti: Bir String ifadeyi Applete
Yazmak
8
public class WelcomeApplet extends JApplet {
– Class WelcomeApplet is a tasarım
• appletviewer veya browser WelcomeApplet sınıfının
objesini oluşturur.
– Anahtar kelime public gerekli.
– Bir dosyada sadece bir tane public class olur.
– public class ismi dosya ismi ile aynı olamlıdır.
3.3
Basit Java Appleti: Bir String ifadeyi Applete
Yazmak
11
public void paint( Graphics g )
– Sınıfımız JApplet sınıfından paint metodunu miras
alır.
• paint metodunun default olarak gövde kodu yok.
• Bizim sınıfımızdaki paint metodu yeniden
tanımlanur.(override)
– Methods paint, init, ve start
• Her appletin bu üç metoda ihtiyacı olamayabilir.
– İhtiyacı olduklarını yeniden tanımlar.
3.3
11
Basit Java Appleti: Bir String ifadeyi Applete
Yazmak
public void paint( Graphics g )
– Method paint
• Satır 11-19 paint metodununa aittir.
• Ekrana grafik çizer.
• void metodun işi bittiğinde hiçbirşey geri döndermeyeceği
anlamındadır.
• Parentezlar parametre listesini tanımlamak içindir.
– Normalde, programcı metoda verilerini parametre yolu ile
geçirir JOptionPane.showMessageDialog
olduğu gibi
• paint parametrelerini otomatik olarak alır.
– Graphics objesi paint tarafından kullanılır.
3.3
14
Basit Java Appleti: Bir String ifadeyi Applete
Yazmak
super.paint( g );
– superclass JApplet tarafından paint metodu çağrılır.
– Her applet’in paint metodununu ilk satırında olmalıdır.
17
g.drawString( "Welcome to Java Programming!", 25, 25 );
– Paint in gövde kodları
• Method drawString (Graphics sınıfının )
• Graphics türünnde yaratılmış g objesi
• Method ismi, parametreleri için parantez
– Birinci parametre: yazılacak String
– İkincisi: x koordinatı (in pixels)
– Üçüncüsü: y koordinatı (in pixels)
– Java koordinat sistemi
• Pixel olarak ölçeklenir.
• Üst sol (0,0)
3.3
Basit Java Appleti: Bir String ifadeyi Applete
Yazmak
• Appleti çalıştırma
– Derleme
• javac WelcomeApplet.java
• Hata yoksa, bytecode lar WelcomeApplet.class içinde
saklanır.
– HTML dosyası yüklemek
• Dosyayı appletviewer veya browsera yüklemek
• .htm or .html bitebilir.
– Appleti çalıştırma
• HTML dosyasında hangi applet varsa o applet çalışır.
3.3
1
2
3
4
Basit Java Appleti: Bir String ifadeyi Applete
Yazmak
<html>
<applet code = "WelcomeApplet.class" width = "300" height = "45">
</applet>
</html>
– Basit HTML dosyası (WelcomeApplet.html)
• Genellikle .class dosyası ile aynı kalsörde bulunur.
• Hatırlayın, .class dosyası derlemeden sonra oluşur.
– HTML kodları (tagler)
• Genellikle çiftler halinde yazılır.
• < ile başlar . > ile biter.
– Satır 1 ve 4 – başlangıç bitiş HTML tagleri
– Satır 2 - <applet> tagine başlayış
• Applet için özel bir tag
• Appleti görüntülemek için width ve height parametreleri
ister.
– Satır 3 - </applet> taginin bitişi
3.3
1
2
3
4
Basit Java Appleti: Bir String ifadeyi Applete
Yazmak
<html>
<applet code = "WelcomeApplet.class" width = "300" height = "45">
</applet>
</html>
– appletviewer sadece <applet> taglerinden anlar.
• Gerisini iptal eder.
• Küçük tarayıcı
– Appleti çalıştırma
• appletviewer WelcomeApplet.html
• .class dosyası çalışır.
3.3
Basit Java Appleti: Bir String ifadeyi Applete
Yazmak
• Web browser da appletin çalışması
3.4
Çizgi Çizmek ve String Yazmak
• Daha fazla applet
– Birinci örnek
• İki satırlık text yazdırmak
• drawString kullanarak iki satırlık text yazdırmak.
– İkinci örnek
• Method g.drawLine(x1, y1, x2, y2 )
– (x1, y1)’den (x2, y2)’ye kadar çizgi çizmek
– Hatırla (0, 0) appletin sol üst kısmını işaret eder.
• drawLine tkullanarak text in altını ve üstünü çerçeveleyelim.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// Fig. 3.9: WelcomeApplet2.java
// Displaying multiple strings in an applet.
// Java packages
import java.awt.Graphics;
import javax.swing.JApplet;
// import class Graphics
// import class JApplet
public class WelcomeApplet2 extends JApplet {
// draw text on applet’s background
public void paint( Graphics g )
{
// call superclass version of method paint
super.paint( g );
// draw two Strings at different locations
g.drawString( "Welcome to", 25, 25 );
g.drawString( "Java Programming!", 25, 40 );
WelcomeApplet2.j
ava
1. import
2. Class
WelcomeApplet2
(extends
JApplet)
3. paint
3.1 drawString
} // end method paint
} // end class WelcomeApplet2
The two drawString3.2 drawString
on same In
x coordinate,
statements simulate a newline.
but
pixels down
fact, the concept of lines
of15
text
does not exist when drawing
strings.
1
2
3
4
<html>
<applet code = "WelcomeApplet2.class" width = "300" height = "60">
</applet>
</html>
HTML file
Program Output
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// Fig. 3.11: WelcomeLines.java
// Displaying text and lines
// Java packages
import java.awt.Graphics;
import javax.swing.JApplet;
// import class Graphics
// import class JApplet
public class WelcomeLines extends JApplet {
// draw lines and a string on applet’s background
public void paint( Graphics g )
{
// call superclass version of method paint
super.paint( g );
// draw horizontal line from (15, 10) to (210, 10)
g.drawLine( 15, 10, 210, 10 );
// draw horizontal line from (15, 30) to (210, 30)
g.drawLine( 15, 30, 210, 30 );
// draw String between lines at location (25, 25)
g.drawString( "Welcome to Java Programming!", 25, 25 );
WelcomeLines.ja
va
2. Class
WelcomeLines
(extends
JApplet)
3. paint
3.1 drawLine
3.2 drawLine
Draw horizontal lines with
drawLine (endpoints
have same
3.3 drawString
y coordinate).
} // end method paint
} // end class WelcomeLines
Program Output
1
2
3
4
<html>
<applet code = "WelcomeLines.class" width = "300" height = "40">
</applet>
</html>
HTML file
3.4
Çizgi Çizmek ve String Yazmak
• Graphics sınıfının drawLine metodu
– Başlangıç x ve y koordinatı
– Bitiş x ve y koordinatı
3.5
İki Sayıyı Eklemek
• Bir sonraki applet
– Bu sefereki küçük uygulamamız; iki sayının toplanması
• Sayıları ondalıklı kullanacağız.
– İlkel tipler
• double
• float
– Programı görelim, sonra satır satır inceleyelim...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
2
3
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Fig. 3.13: AdditionApplet.java
// Adding
Adding two
numbers.
//
two floating-point
floating-point
numbers
import java.awt.Graphics;
// import class Graphics
// Java packages
import java.awt.Graphics;
// import class Graphics
import javax.swing.*;
//extends
import package
public
class AdditionApplet
JAppletjavax.swing
{
double sum;
AdditionApplet.
java
// sum of the values entered by the user
public class AdditionApplet extends JApplet {
double sum; // sum of values entered by user
public void init()
* allows any class in the
{
// initialize applet by obtaining valuespackage
from user
to be used.
String
firstNumber,
//
first
string
entered
by user
public void init()
secondNumber; // second string entered by user
{
doublefirstNumber;
number1,
// first
number
to add
String
// first
string
entered
by user
number2;
//
second
number
to
String secondNumber; // second string entered add
by user
// read
in first
double
number1;
firstNumber
=
double
number2;
Field sum may be used anywhere
number
fromnumber
user to add
// first
in the class, even in other methods.
// second number to add
JOptionPane.showInputDialog( Type double can
// obtain
first first
numberfloating-point
from user
"Enter
value"
);
point
numbers.
firstNumber = JOptionPane.showInputDialog(
first
floating-point
value"
//"Enter
read in
second
number from
user);
secondNumber =
// obtain second number from user
JOptionPane.showInputDialog(
secondNumber = JOptionPane.showInputDialog(
"Enter second floating-point value" );
"Enter second floating-point value" );
store floating
1. import
2. Class
AdditionApplet
(extends
JApplet)
3. Fields
4. init
4.1 Declare variables
4.2
showInputDialog
4.3 parseDouble
// convert numbers from type String to type double
number1 = Double.parseDouble( firstNumber );
number2 = Double.parseDouble( secondNumber );
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
1
2
3
4
31
//
//add
addnumbers
the numbers
sum
=
number1
+ number2;
sum = number1
+ number2;
32
33
}
} // end method init
34
35
public
void paint(
Graphics on
g )applet’s background
//
draw results
in a rectangle
{
public
void paint( Graphics g )
{
// draw the results with g.drawString
//
call superclass
version
paint
g.drawRect(
15, 10,
270,of20method
);
super.paint( g );
36
37
38
39
g.drawString( "The sum is " + sum, 25, 25 );
40
}
41 }
1
2
3
4
5. Draw applet
contents
5.1 Draw a rectangle
5.2 Draw the results
// draw rectangle starting from (15, 10) that is 270
// pixels wide and 20 pixels tall
g.drawRect( 15, 10, 270, 20 );
<html>
<applet
code="AdditionApplet.class"
width=300
height=50>
// draw
results as a String at (25,
25)
</applet>
g.drawString( "The sum is " + sum, 25, 25 );
</html>
} // end method paint
} // end class AdditionApplet
drawRect takes the upper left coordinate, width,
and height of the rectangle to draw.
HTML file
<html>
<applet code = "AdditionApplet.class" width = "300" height = "65">
</applet>
</html>
Program Output
3.5
İki Sayıyı Eklemek
– Satır 1-2: Yorum
5
import java.awt.Graphics;
// import class Graphics
– Satır 5: imports class Graphics
• Eğer kodlarda paket ve sınıf ismi tam kullanılırsa import
ifadesine gerek yoktur.
public void paint ( java.awt.Graphics g )
6
import javax.swing.*;
// import package javax.swing
– Satır 8: javax.swing paketinin özel kullanımı
• * javax.swing içindeki tüm sınıflar erişilebilir.
– JApplet ve JOptionPane kullanılmış
• * bütün sınıfları yüklemez.
– Derleyici sadece programda kullanılan sınıfları yükler.
3.5
8
İki Sayıyı Eklemek
public class AdditionApplet extends JApplet {
– Sınıf tanıtımı
• javax.swing paketindeki JApplet ten miras alınmış.
9
double sum;
// sum of values entered by user
– Sınıf üye değişkeni tanımlama
• Sınıf gövdesinde tanıtılmalı, metod içinde tanıtılmamalı
– Metodda tanıtılan değişkenler yerel (lokal) değişkenlerdir.
– Metodda tanıtılan değişken sadece metod içinde
kullanılabilir.
• Sınıf üyeleri sınıfın istenilen yerinde kullanılırlar.
• Varsayılan değeri (0.0 in this case)
3.5
9
double sum;
İki Sayıyı Eklemek
// sum of values entered by user
– İlkel tip double
12
public void init()
– Method init
• Appletteki sınıfının ve üyelerinin ilk değer aldığı metod.
• Applet çaışırken ilk çağrılan metod.
• İlk satır herzaman yukardaki gibi gözükür.
– Geirye birşey döndürmez (void) ve herhangi bir
argümanda almaz
13
{
init metoduna başlangıç
3.5
14
15
16
17
18
İki Sayıyı Eklemek
String firstNumber;
String secondNumber;
// first string entered by user
// second string entered by user
double number1;
double number2;
// first number to add
// second number to add
– Değişken deklare etme
– İki tür değişken vardır
• Referans değişkenler (referanslar)
– Objeyi referans eder. (bellekte konum içerir)
• Objeler sınıf tanımlamasında tanımlanırlar.
• Birçok data ve metodlar içerirler.
– paint metodu Graphics objesinden g isminde
referans alır.
– Bu referans Graphics objesinin metodlarını çağırır.
• ilkel tipler (değişkenler)
– Sadce bir tane veriyi tutarlar.
3.5
14
15
16
17
18
İki Sayıyı Eklemek
String firstNumber;
String secondNumber;
// first string entered by user
// second string entered by user
double number1;
double number2;
// first number to add
// second number to add
– Referans ve değişkenler arasındaki farklılıklar
• Eğer veri tipi sınıf ismi ise, bu referanstır.
– String bir sınıftır.
– firstNumber, secondNumber
• Eğer veri tipi ilkel tip ise, bu değişkendir.
– double bir ilkel tiptir.
– number1, number2
3.5
21
22
İki Sayıyı Eklemek
firstNumber = JOptionPane.showInputDialog(
"Enter first floating-point value" );
• Method JOptionPane.showInputDialog
• Kullanıcıdan string bir girdi dönderir.
• Text alan yazılır ardından OK basılır.
– Eğer yalnış tip girdi ise hata verir.
• Kullanıcı girişini string olarak geri dönderir.
– Satır 25-26: Yukardaki aynı işi secondNumber için
yapar.
3.5
29
30
İki Sayıyı Eklemek
number1 = Double.parseDouble( firstNumber );
number2 = Double.parseDouble( secondNumber );
– static method Double.parseDouble
• String ifadeyi double çevirir.
• Static method sentaksını hatırlayın.
– Classİsmi.methodİsmi( arguments )
3.5
35
İki Sayıyı Eklemek
} // end method init
– Init metodunun bitişi
• appletviewer (veya browser) start metodunu çağırır.
• start ugenellikle çoklu kanallama (multithreading) de
kullanılır.
– Bölüm 16 dan bakılabilir.
– Biz bu programımızda onu deklare etmediğimizden
kullanılmıyor.
• Sonra, method paint çağrılır.
45
g.drawRect( 15, 10, 270, 20 );
– Method drawRect( x1, y1, width, height )
• Sol üst koordinatı (x1, y1) olan ve genişliği (width) ve
yüksekliği (height)
• Satır 45 (15, 10) noktasından başlayıp genişliği 270 pixel ,
yüksekliği 20 pixel olan bir dikdörtgen çizer.
3.5
48
İki Sayıyı Eklemek
g.drawString( "The sum is " + sum, 25, 25 );
– g referansını kullanarak Graphics objesinin
drawString metoduna "The sum is" + sum
yollanıyor.
– sum stringe çevrildi.
• sum paint metodunun içinde tanımlanmadığı halde
kullanıldı.
– Local değişken değil
40
Örnek Programlar
• for
• while
• do while
 2003 Prentice Hall, Inc. All rights reserved.
41
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Outline
// Fig. 5.1: WhileCounter.java
// Counter-controlled repetition.
import java.awt.Graphics;
WhileCounter.ja
va
import javax.swing.JApplet;
Control-variableCondition
name is counter
tests for
counter’s final value
Control-variable initial value is 1
public class WhileCounter extends JApplet {
// draw lines on applet’s background
public void paint( Graphics g )
{
super.paint( g ); // call paint method inherited from JApplet
int counter = 1;
Line 14
Line 16
Increment Line
for counter
18
// initialization
while ( counter <= 10 ) { // repetition condition
g.drawLine( 10, 10, 250, counter * 10 );
++counter; // increment
} // end while
} // end method paint
} // end class WhileCounter
 2003 Prentice Hall, Inc.
All rights reserved.
42
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Fig. 5.2: ForCounter.java
// Counter-controlled repetition with the for statement.
import java.awt.Graphics;
import javax.swing.JApplet;
Condition tests for
Control-variable namecounter’s
is counterfinal value
public class ForCounter extends JApplet {
Control-variable initial value is 1
applet’s background
Increment for counter
// draw lines on
public void paint( Graphics g )
{
super.paint( g ); // call paint method inherited from JApplet
// for statement header includes initialization,
// repetition condition and increment
for ( int counter = 1; counter <= 10; counter++ )
g.drawLine( 10, 10, 250, counter * 10 );
Outline
ForCounter.java
Line 16
int counter =
1;
Line 16
counter <= 10;
Line 16
counter++;
} // end method paint
} // end class ForCounter
 2003 Prentice Hall, Inc.
All rights reserved.
43
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Fig. 5.7: DoWhileTest.java
// Using the do...while statement.
import java.awt.Graphics;
Outline
DoWhileTest.jav
a
import javax.swing.JApplet;
Oval is drawn before testing
counter’s final value
public class DoWhileTest extends JApplet {
Lines 16-20
// draw lines on applet
public void paint( Graphics g )
{
super.paint( g ); // call paint method inherited from JApplet
int counter = 1;
// initialize counter
do {
g.drawOval( 110 - counter * 10, 110 - counter * 10,
counter * 20, counter * 20 );
++counter;
} while ( counter <= 10 ); // end do...while
} // end method paint
} // end class DoWhileTest
 2003 Prentice Hall, Inc.
All rights reserved.
44
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// Fig. 5.9: SwitchTest.java
// Drawing lines, rectangles or ovals based on user input.
import java.awt.Graphics;
Outline
SwitchTest.java
import javax.swing.*;
public class SwitchTest extends JApplet {
int choice; // user's choice of which shape to draw
// initialize applet by obtaining user's choice
public void init()
{
Get user’s
String input; // user's input
Lines 16-21:
Getting user’s input
input in JApplet
// obtain user's choice
input = JOptionPane.showInputDialog(
"Enter 1 to draw lines\n" +
"Enter 2 to draw rectangles\n" +
"Enter 3 to draw ovals\n" );
choice = Integer.parseInt( input );
// convert input to int
} // end method init
// draw shapes on applet's background
public void paint( Graphics g )
{
super.paint( g ); // call paint method inherited from JApplet
for ( int i = 0; i < 10; i++ ) {
// loop 10 times (0-9)
 2003 Prentice Hall, Inc.
All rights reserved.
45
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
switch ( choice ) {
// determine shape to draw
user input (choice) is
Outline
case 1: // draw a line
switch
statement
determines
controlling
expression
g.drawLine( 10, 10, 250, 10 + i * 10 );
SwitchTest.java
which case label to execute,
break; // done processing case
case 2: // draw a rectangle
g.drawRect( 10 + i * 10, 10 + i
50 + i * 10, 50 + i * 10 );
break; // done processing case
depending on controlling expression
Line 32:
controlling
* 10,
expression
case 3: // draw an oval
g.drawOval( 10 + i * 10, 10 + i * 10,
50 + i * 10, 50 + i * 10 );
break; // done processing case
Line 32:
switch statement
Line 48
default: // draw string indicating invalid value entered
g.drawString( "Invalid value entered",
10, 20 + i * 15 );
} // end switch
default case for invalid entries
} // end for
} // end method paint
} // end class SwitchTest
 2003 Prentice Hall, Inc.
All rights reserved.
46
Outline
SwitchTest.java
 2003 Prentice Hall, Inc.
All rights reserved.
47
Outline
SwitchTest.java
 2003 Prentice Hall, Inc.
All rights reserved.
3.6
Java Applet Internet ve World Wide
Web Kaynakları
• Birçok Java appletlerine ulaşılabilir
– java.sun.com/applets/
– Birçok kaynak kod ve free appletler indirilebilir.
– Sun site developer.java.sun.com/developer
• Tartışma oturumları, eğitici slaytlar, tutoriallar, makaleler..vb.
• Kayıt gerekli
– www.jars.com
• Appletler oylanıyor., top 1, 5 ve yüzde 25
• Web deki en iyi appletleri bu sayfadan göreblirsiniz.
Download