• Tidak ada hasil yang ditemukan

Pertemuan6 JavaApplets [Compatibility Mode]

N/A
N/A
Protected

Academic year: 2018

Membagikan "Pertemuan6 JavaApplets [Compatibility Mode]"

Copied!
57
0
0

Teks penuh

(1)
(2)

! "

#

$

#

%

& '

&&

&&

&&

(

#

)

*

#

$

+

,-. # / '

(3)

2

3

-

0 $

4

+

0 $

0 $

– byte code is a generic machine code

0 $ 1

– must have a byte code interpreter for each hardware platform

,

0 $

,

0 $

/

# 01

'

/

3 ,

'

.

! 5

$

3 6 '

(4)

2

-7"

$

.

%8

6.. + .

,

0 $

9) :

'

#

-

0 $

#

'

"

,

0 $

,

$

#

01

- /

#

01

'

#

'

"

(5)

Compile-time Environment

Compile-time Environment

Java

Java Class

Libraries

;

0 $ ;

<=

Pemrograman Web/TI/ AK045216/2 sks

Java

Bytecodes

move locally

or through

network

Runtime System

Operating System

(6)

;

0 $ ;

<=

0 $

!

6

0 $ 1

01 #

#

'

01 #

(7)

>

' 0 $

3

(

$

3 ,

'

.

"

#

)

/

#

(8)

& '&

3 0 $

&&-8

7

3

0 $

'

=

(9)

>

0 $

3

' ?

& # ) , /

3

>

3

3

-

/

3

'

(10)

0 $

3 0 $

'

6

0 $

0 $

-

0 $ 1

3 0 $

$

'

0 $

#

'

-

01

-

01

.

0 $ # 0 $

'

"

$

0 $

, 8 '

#

,

8

5

$

*

3 0 $

$

$ '

(11)

3 8

! 0 $

+

=

0

'

#

public static void main

#

0

'

?

#

public void paint

#

public void init

# <

0 $ ,

3 , / 0 $ #

3 , / 0 $ #

>

0 $

' /

#

01

#

2

0 $

/

/

0 $

#

/

/

!

/

0 $

$

2

(12)

0 $ ,

import java.awt.*;

import java.applet.*;

/**

* This class displays "Hello world!" on the applet window. */

public class HelloWorld extends Applet

{ public void paint(Graphics g)

{g.drawString("Hello world!", 10, 10); // writes starting 10 pixels over & down

}

}

!

0 $

$

"

$

#include

java.awt:

,

?

/.

@98

+

java.applet:

!

//

/* */

(13)

0 $ ,

import java.awt.*;

import java.applet.*;

/**

* This class displays "Hello world!" on the applet window. */

public class HelloWorld extends Applet

{ public void paint(Graphics g)

{ g.drawString("Hello world!", 10, 10); // writes starting 10 pixels over & down

}

}

0 $

-

$

+

-

+

.

'

0 $ *

6

2 $

(14)

0 $ ,

import java.awt.*;

import java.applet.*;

/**

* This class displays "Hello world!" on the applet window. */

public class HelloWorld extends Applet

{

public void paint(Graphics g)

{ g.drawString("Hello world!", 10, 10); // writes starting 10 pixels over & down

}

}

/

,

$ 2

!

init():

memanggil saat page di-load untuk membuat/inisialisasi

$

(15)

7

,

6.

?

#

,

7.

&-7

# 678@6.

?8-.6

/

/ 5

"

,

7.

2 2# 0 $

&;07 .

6.

A#

$

<html>

<!– COMP519 hello1.html 18.09.2005 -->

<head> <title>Hello World Page</title> </head>

<body>

<p>

<applet code="HelloWorld.class" height=100 width=100>

You must use a Java-enabled browser to view this applet.

</applet>

</p>

(16)

6.

+ ,

<html>

<!– COMP519 hello2.html 18.09.2005 -->

<head>

<title>Hello World Page</title>

</head>

<body>

<p>

<div align="center">

<table border=1>

<tr><td>

'

6.

;

<tr><td>

<applet code="HelloWorld.class" height=200 width=200>

You must use a Java-enabled browser to view this applet.

</applet>

</td></tr>

</table>

</div>

</p>

(17)

6.

<html>

<!– COMP519 hello3.html 18.09.2005 -->

<head>

<title>Hello World Page</title>

</head>

<body>

<p>

<div align="center">

<table border=1>

<tr><td>

<applet code="HelloWorld1.class" height=35 width=300>

<param name="

name

" value="Chris">

<param name="

age

" value=20>

You must use a Java-enabled browser to view this applet.

</applet>

</td></tr>

</table>

</div>

</p>

</body> </html>

,),

,

7.

3

(18)

,

import java.awt.*;

import java.applet.*;

/**

* This class displays a message based on parameters. */

public class HelloWorld1 extends Applet

{ public void paint(Graphics g)

{ String userName =

getParameter("

name

");

int userAge =

Integer.parseInt(

getParameter("

age

")

)

;

String message1 = "Hello " + userName + ".";

String message2 = "On your next birthday, you will be " +

String message2 = "On your next birthday, you will be " +

(userAge+1) + " years old.";

g.drawString(message1, 10, 10);

g.drawString(message2, 10, 30);

}

}

6.

getParameter

/

(19)

0 $

3

,

%

3

.

B .

3

2 $

#

2

B /

2

0 $

$

0 $ - $

3

'

;

>

(20)

$ .

1

3

;

#

#

#

# #

#

#

2

3

.

'

3

8

/

$ $

2

3

$ $

!

1 B

(21)

8

3

0

#

3

0 $

'

$ $

5

$

3

/

'

3

(22)

-

"C E2DB

%%

& C EB

%%

$

C F % AB

%%

=

C F2G B

%%

$

C F2H % A2HB

%%

3

E2D

$

2

3

E2D

$

EF

2

(23)

3

, 0 $

$

C E# C D# C F

C C

2 2

I CI

I C I

I C I

,

3

?

$

# +

(24)

;

&

* / % +

-•

* / %

$

+

-double myVal = a + b % d – c * d / b;

3

8

!

double myVal = (a + (b % d)) – ((c * d) / b);

+ ;

+ ;

3

,!

C I

JB

3

/ !

K

EC I

JB

DC I; JB

L

(25)

/

3

0 $

3

;

0 $

/

!

,

! #

# /

!

# /

#

/

7

!

#

#

8 ( .

8 ( .

3

' $

"

+

$

2

"

EH#

"

EH

" M EH " C EHB

3

6

!

" M EH

" C EHB

3

, #

$

!

(26)

)

&

CC

7N

=C

4

N

OC

@

N

MC

N

O

@

M

8 <

3

.

<

$

"

$

3

.

<

$

"

$

2

if (x != oldx) {

System.out.print(“x was changed”);

}

else {

(27)

4

<

if ( myVal > 100 ) {

if ( remainderOn == true) {

myVal = mVal % 100;

}

else {

myVal = myVal / 100.0;

}

}

}

else

{

(28)

3

;

$ !

if ( n == 1 ) {

// execute code block #1

}

else if ( j == 2 ) {

// execute code block #2

}

else {

// if all previous tests have failed, execute code block

#3

(29)

<

WRONG!

if( i == j )

if ( j == k )

System.out.print(“i equals k”);

else

System.out.print(“i is not equal to j”);

CORRECT!

if( i == j ) {

if ( j == k )

System.out.print(“i equals k”);

}

else

(30)

/

switch ( n ) {

case 1:

// execute code block #1

break;

case 2:

// execute code block #2

break;

break;

default:

// if all previous tests fail then

//execute

code block #4

break;

(31)

3

for ( i = 0; i < n; n++ )

{

// this code body will execute n times

// ifrom 0 to n-1

}

3

4

!

3

4

!

for ( j = 0; j < 10; j++ ) {

for ( i = 0; i < 20; i++ ){

// this code body will execute 200 times

}

(32)

/

while(response == 1) {

System.out.print( “ID =” + userID[n]);

n++;

response = readInt( “Enter “);

}

K< L /

K< L /

do {

System.out.print( “ID =” + userID[n] );

n++;

(33)

;

3

;

/

# #

/

2

for ( int i = 0; i < maxID, i++ ) {

if ( userID[i] == targetID ) {

index = i;

break;

}

} // program jumps here after break

3

6

/

#

2

3

for ( int i = 0; i < maxID; i++ ) {

if ( userID[i] != -1 ) continue;

(34)

,)7&

-3

&& '

3

'

3

0 $

3

'

2 $

(35)

.

&&

3

7

&

3

8

/

$

3

8

car

auto-matic

manual

Super class

Subclasses

(36)

K

B

! !

B

!

K

*

! !

B

*

! !

B

(37)

3

0 $

3

#

2

3

"

2

public float convertCelsius(float tempC) {

(38)

3

!

4

2

.

2

.

$

2

;

'

2

"

# $

%

$

KL

(39)

% $

3

%

%

<

3

@

!

$

$

3

8

(

9

9

3

<

C /

B

B

C

2

P

B

(40)

3

.

C /

B

3

$

'

3

>

#

222

&$

&$

3 -

$

%

K

CFHBL

# K

C B P P

C BL

(41)

0 $ - $

>

3

$

' . 0 $

3

$

' . 0 $ 8

3

' . 0 $

-3

$ /

' .

3

$ '

0 $

(42)

0 $ $ 2

0 $

$

!

#

5

G

EQ

EQ

RD

QA

RD

QA

$

#

#

+

!

!

#

!

#

+

% $

0 $ # $

$

+

0 $ # $

$

+

#

#

$

6

#

6

$

#

class Math

(43)

$ $ 2 )

.

$

"

$

$

new

$

&

'((

)*

)*

0 $

$

'$

.

$

'

public void Init(int[] nums)

{ for (int i = 0; i < nums.length; i++) {

nums[i] = 0; }

}

_____________________________ _

(44)

0 $

3

'

java.lang

int length()

char charAt(index)

int indexOf(substring)

String substring(start, end)

String toUpperCase()

boolean equals(Object)

...

3 ,

'

java.lang

String str = "foo"

String str = new String("foo");

3 ,

'

java.lang

int length

instance variable

Type [](index)

operator

String toString()

...

3 0 $

$

"

$

+

java.util

Date

Random

Timer

ArrayList

LinkedList

Stack

TreeSet HashSet

TreeMap HashMap

(45)

,

;

$

3

;

5

$

+

#

!

/

/

5

3 /

#

$

@

@

!

void drawString(String msg, int x, int y)

void setColor(Color color)

Color

#

!

(46)

6

,

import java.awt.*;

import java.applet.*;

import java.util.Random;

/**

* This class displays lots of "Hello world!"s on the applet window.

*/

public class HelloWorld2 extends Applet

{

private static final int NUM_WORDS=100;

private static final Color[] colors =

{Color.black,Color.red,Color.blue,Color.green,

Color.yellow};

private static

Random

randy;

private int RandomInRange(int low, int high)

{

return (Math.abs(randy.nextInt()) %

(high-low+1)) + low;

}

3

"

setColor

)

$

}

public void init()

{

randy = new Random();

}

public void paint(Graphics g)

{

for (int i = 0; i < NUM_WORDS; i++) {

int x = RandomInRange(

1

,

14

0);

int y = RandomInRange(

10

,

200

);

g.setColor(colors[RandomInRange(0,4)]);

g.drawString("Hello world!", x, y);

}

}

}

<applet code="HelloWorld2.class" height=200 width=200>

$

$

+

(47)

+ ,

!

-

6.

<PARAM>

,

$

getParamete

r

-Dimension dim = getSize();

// stores applet dimensions

dim.height

(48)

,

$ 6

import java.awt.*; import java.applet.*; import java.util.Random;

/**

* This class displays lots of "Hello world!"s on the applet window. */

public class HelloWorld3 extends Applet {

private static final Color[] colors =

{Color.black,Color.red,Color.blue,Color.green,Color.yellow}; private static Random randy;

private Dimension dim; private int numReps;

private int RandomInRange(int low, int high) {

return (Math.abs(randy.nextInt()) % (high-low+1)) + low; }

public void init()

getParameter

$

#

?

public void init()

{

randy = new Random();

dim = getSize();

numReps = Integer.parseInt(getParameter("reps")); }

public void paint(Graphics g) {

for (int i = 0; i < numReps; i++) {

int x = RandomInRange(1, dim.width-60);

int y = RandomInRange(10, dim.height);

g.setColor(colors[RandomInRange(0,4)]); g.drawString("Hello world!", x, y);

} }

}

?

getSize

#

" /

(49)

3

"

-

& @

void drawLine(int x1, int y1, int x2, int y2)

void drawRect(int x, int y, int width, int height)

void fillRect(int x, int y, int width, int height)

void drawOval(int x, int y, int width, int height)

,

@

void drawOval(int x, int y, int width, int height)

void fillOval(int x, int y, int width, int height)

3 7S,

7!

/

N

#

/

-

$ 2

#

π

(50)

@

,

public class Monte1 extends Applet {

private static Random randy; private int NUM_POINTS; private int SIZE;

private int RandomInRange(int low, int high) { CODE OMITTED }

private double distance(int x1, int y1, int x2, int y2) { CODE OMITTED }

public void init() {

randy = new Random();

NUM_POINTS = Integer.parseInt(getParameter("points")); Dimension dim = getSize();

SIZE = Math.min(dim.width, dim.height); }

init

+

paint

/

public void paint(Graphics g) {

g.setColor(Color.red);

g.fillOval(0, 0, SIZE, SIZE);

for (int i = 0; i < NUM_POINTS; i++) { int x = RandomInRange(0, SIZE); int y = RandomInRange(0, SIZE);

if (distance(x, y, SIZE/2, SIZE/2) < SIZE/2) {

g.setColor(Color.white);

} else {

g.setColor(Color.black);

}

g.drawLine(x, y, x, y);

}

<applet code="Monte1.class" height=300 width=300> <param name="points" value=20000>

You must use a Java-enabled browser... </applet>

(51)

-

;

3

!

$

$

#

'

/

+

3

/

'

'

!

,

(52)

;

,

public class Monte2 extends Applet {

. . .

private Image offScreenImage;

private Graphics offScreenGraphics; . . .

public void init() {

randy = new Random();

NUM_POINTS = Integer.parseInt(getParameter("points")); Dimension dim = getSize();

SIZE = Math.min(dim.width, dim.height);

offScreenImage = createImage(SIZE, SIZE);

offScreenGraphics = offScreenImage.getGraphics();

offScreenGraphics.setColor(Color.red);

offScreenGraphics.fillOval(0, 0, SIZE, SIZE);

init

/

/

# '

@

paint

init

/

$

$

for (int i = 0; i < NUM_POINTS; i++) { int x = RandomInRange(0, SIZE); int y = RandomInRange(0, SIZE);

if (distance(x, y, SIZE/2, SIZE/2) < SIZE/2) { offScreenGraphics.setColor(Color.white); }

else {

offScreenGraphics.setColor(Color.black); }

offScreenGraphics.drawLine(x, y, x, y); }

}

public void paint(Graphics g) {

g.drawImage(offScreenImage, 0, 0, null);

<applet code="Monte2.class" height=300 width=300> <param name="points" value=20000>

You must use a Java-enabled browser... </applet>

/

$

$

(53)

-;

public class Monte3 extends Applet {

. . .

public void init() { randy = new Random();

NUM_POINTS = Integer.parseInt(getParameter("points")); Dimension dim = getSize();

SIZE = Math.min(dim.width, dim.height); }

public void paint(Graphics g) {

if (offScreenImage == null) {

offScreenImage = createImage(SIZE, SIZE);

offScreenGraphics = offScreenImage.getGraphics(); offScreenGraphics.setColor(Color.red);

g.setColor(Color.red);

offScreenGraphics.fillOval(0, 0, SIZE, SIZE); g.fillOval(0, 0, SIZE, SIZE);

for (int i = 0; i < NUM_POINTS; i++) { int x = randomInRange(0, SIZE); int y = randomInRange(0, SIZE);

/

/ #

paint

/

# $

paint

/

'

int y = randomInRange(0, SIZE);

if (distance(x, y, SIZE/2, SIZE/2) < SIZE/2) { offScreenGraphics.setColor(Color.white);

offScreenGraphics.drawLine(x, y, x, y); g.drawLine(x, y, x, y);

}

} else {

g.drawImage(offScreenImage, 0, 0, null); }

} }

N

#

/

'

<applet code="Monte3.class" height=300 width=300> <param name="points" value=20000>

(54)

@98 7

,

3 0 $

"

$

@98 @

9

8

6.

# "

" # "

# <

3

nameLabel = new Label("User's name");

add(nameLabel);

nameField = new TextField(20);

nameField.setValue("Dave");

add(nameField);

3 0 $

FlowLayout

BorderLayout

(55)

. " ; "

public class Monte4 extends Applet {

. . .

private Label insideLabel; private TextField insideField; private Label outsideLabel; private TextField outsideField;

public void init() {

randy = new Random(); NUM_POINTS =

Integer.parseInt(getParameter("points")); Dimension dim = getSize();

SIZE = Math.min(dim.width, dim.height);

public void paint(Graphics g) {

. . .

insideField.setText("0"); outsideField.setText("0");

. . .

if (distance(x, y, SIZE/2, SIZE/2) < SIZE/2) { g.setColor(Color.white);

setLayout(new BorderLayout());

Panel p = new Panel();

insideLabel = new Label("Inside:"); p.add(insideLabel);

insideField = new TextField(5); p.add(insideField);

outsideLabel = new Label("Outside:"); p.add(outsideLabel);

outsideField = new TextField(5); p.add(outsideField);

add(p, BorderLayout.SOUTH); }

(56)

7$

6

3

$

2 2# "

#

#

6

/

'

ActionListener

public class Monte5 extends Applet implements ActionListener

$

dotButton = new Button("Click to generate dots");

dotButton = new Button("Click to generate dots");

dotButton.addActionListener();

6

actionPerformed

$

public void actionPerformed(ActionEvent e)

{

if (e.getSource() == dotButton) {

drawDots();

(57)

,

import java.awt.*; import java.applet.*; import java.awt.event.*; import java.util.Random;

public class Monte5 extends Applet

implements ActionListener {

. . .

private Button dotButton;

public void init() {

randy = new Random(); NUM_POINTS =

public void drawCircle() {

CODE FOR DRAWING CIRCLE }

public void drawDots() {

drawCircle();

Graphics g = getGraphics();

for (int i = 0; i < NUM_POINTS; i++) { CODE FOR DRAWING DOTS

} }

Integer.parseInt(getParameter("points")); Dimension dim = getSize();

SIZE = dim.width;

setLayout(new BorderLayout()); dotButton =

new Button("Click to generate dots"); dotButton.addActionListener(this); add(dotButton, BorderLayout.SOUTH);

drawCircle(); }

public void paint(Graphics g) {

g.drawImage(offScreenImage, 0, 0, null); }

public void actionPerformed(ActionEvent e) {

if (e.getSource() == dotButton) { drawDots();

} }

}

<applet code="Monte5.class" height=325 width=300> <param name="points" value=20000>

Referensi

Dokumen terkait

Berdasarkan hasil penelitian disimpulkan bahwa jumlah koloni bakteri fase inflamasi luka bakar grade II pada mencit sebelum dilakukan perawatan dengan menggunakan

sebagai penanda bahwa di lokasi ini tepat di lalui garis khatulistiwa. Taman mengintari kawasan Equator dan Museum sehingga lokasi ini menjadi salah satu favorit warga

Alhamdulillah, puji syukur penulis panjatkan ke hadirat Allah SWT, berkat rahmat dan karunia-Nya, skripsi yang berjudul Analisis Hubungan Kompensasi Finansial Dengan Motivasi

Puji syukur penulis panjatkan atas kehadirat Tuhan Yang Maha Esa yang telah melimpahkan rahmat dan hidayah-Nya sehingga tugas akhir yang berjudul “Kegiatan Public

cahaya matahari diperlukan tumbuhan untuk hidup tumbuhan sumber makanan bagi hewan dan manusia hewan dan manusia tidak dapat hidup tanpa tumbuhan. untuk mengeringkan padi

Pegawai Negeri Sipil adalah unsur aparatur negara, abdi negara dan abdi masyarakat yang harus menjadi teladan yang baik bagi masyarakat dalam tingkah laku, tindakan dan

Menambah pandangan baru pada masyarakat tentang penerimaan diri remaja yang tinggal di SOS Children’s Village. Memberikan acuan baru pada remaja yang tinggal di

Puji syukur kehadirat Tuhan Yang Maha Esa atas berkat dan karunia- NYA, sehingga penulis dapat menyelesaikan penyusunan Landasan Teori dan Program (LTP) Proyek