applet 3 design_class_composition

Post on 28-Jun-2015

665 Views

Category:

Education

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

เอกสาร Applet ชุดที่ 3 จาก อาจารย์ฝนครับ

TRANSCRIPT

การออกแบบ Class

ssc

1

การออกแบบ Class

Class ?

ssc

2

การออกแบบ Class

public สัญลักษณ์ +private สัญลักษณ์ -protected สัญลักษณ์ #package

ssc

3

การออกแบบ Classssc

Class Name

Attribute

Method

4

การประกาศ Method

Constructor method

Accessor method (“get” method)

Mutator method (“set” method)

Facilities method

ssc

5

การออกแบบ Classssc

Number

Number

6

การออกแบบ Classssc

Number

- number : int

Number

7

การออกแบบ Classssc

Number

Number

- number : int

+ Number()+ Number(int n)

8

การออกแบบ Classssc

Number

Number

- number : int

+ Number()+ Number(int n)+ setValue(int n) : void

9

การออกแบบ Classssc

Number

Number

- number : int

+ Number()+ Number(int n)+ setValue(int n) : void+ getValue() : int

10

การออกแบบ Classssc

Number

Number

- number : int

+ Number()+ Number(int n)+ setValue(int n) : void+ getValue() : int+ toString() : String

11

การออกแบบ Classssc

Number

testNumberNumber

12

การออกแบบ Classssc

public class Number{...}

Number.java

testNumber.javapublic class testNumber extends JApplet{...}

13

การออกแบบ Class

ให้นักศึกษาสร้าง class

ชื่อว่า Number

pico Number.java

ssc

14

การออกแบบ Classssc

Number

- number : int

+ Number()+ Number(int n)+ setValue(int n) : void+ getValue() : int+ toString() : String

15

Number.javassc

public class Number{ private int number;}

- number : int

16

การออกแบบ Classssc

Number

- number : int

+ Number()+ Number(int n)+ setValue(int n) : void+ getValue() : int+ toString() : String

17

Number.javassc

public class Number{ private int number;

public Number() { setValue((int) (Math.random() * 100)); } public Number(int n) { setValue( n ); }}

+ Number()+ Number(int n)

18

การออกแบบ Classssc

Number

- number : int

+ Number()+ Number(int n)+ setValue(int n) : void+ getValue() : int+ toString() : String

19

Number.javassc

public class Number{ private int number; public Number() { setValue((int) (Math.random() * 100)); } public Number(int n) { setValue( n ); }

public void setValue(int n) { number = n; }}

+ setValue(int n) : void

20

การออกแบบ Classssc

Number

- number : int

+ Number()+ Number(int n)+ setValue(int n) : void+ getValue() : int+ toString() : String

21

Number.javassc

public class Number{ ... public Number(int n) { setValue( n ); } public void setValue(int n) { number = n; }

public int getValue() { return(number); }}

+ getValue() : int

22

การออกแบบ Classssc

Number

- number : int

+ Number()+ Number(int n)+ setValue(int n) : void+ getValue() : int+ toString() : String

23

Number.javassc

public class Number{ ... public void setValue(int n) { number = n; } public int getValue() { return(number); }

public String toString() { return(Integer.toString(getValue())); }}

+ toString() : String

24

การออกแบบ Class

ให้นักศึกษาCompile class Number

javac Number.java

ssc

25

การออกแบบ Classssc

Number

testNumberNumber

testNumber.html

26

การออกแบบ Class

ให้นักศึกษาสร้าง HTML file

pico testNumber.html

ssc

27

testNumber.htmlssc

<html><body>

<h1>Test Class Number</h1><h3>5366261111 Supaporn Simcharoen IT1-RC</h3>

<applet code="testNumber.class" height="100" width="400"></applet>

</body></html>

28

การออกแบบ Class

ให้นักศึกษาสร้าง class

ชื่อว่า testNumber

pico testNumber.java

ssc

29

testNumber.javassc

http://202.44.47.108/~ssc/DC-number/testNumber.html

30

testNumber.javassc

31

testNumber.javassc

JLabel textLabel; JTextField textField; JButton saveBtn, clearBtn, showBtn;

Number obj;

ประกาศตัวแปรต่างๆ32

testNumber.java ..init..ssc

Container c = getContentPane();c.setLayout( new FlowLayout());

...สร้าง JLabel 1 อัน,

JTextField 1 อัน,

JButton 3 อัน...

สร้าง Container, JLabel, JTextField, JButton

33

testNumber.java ..init..ssc

textLabel.setFont(new Font("Courier New",Font.BOLD,20));

ตัวอย่างในกรณีที่ระบุ Font

34

testNumber.java ..init..ssc

สร้าง obj ของ Class Number ขึ้นมา

obj = new Number(); textField.setText(obj.toString());

ให้ค่าเริ่มต้น textField

35

ssc

Number

- number : int

+ Number()+ Number(int n)+ setValue(int n) : void+ getValue() : int+ toString() : String

obj = new Number();

มันไปทําที่ไหน ?

testNumber.java ..init..

36

ssc testNumber.java ..a.p..

ถ้ากด Save จะบันทึกค่าลงตัวแปรของ Class

if (event.getSource() == saveBtn) { int value = Integer.parseInt(textField.getText());

obj.setValue(value); textField.setText(""); }

37

ssc testNumber.java ..a.p..

ถ้ากด Clear จะบันทึกค่า 0 ลงในตัวแปร Class

else if (event.getSource() == clearBtn) {

obj.setValue( 0 ); textField.setText(""); }

38

ssc testNumber.java ..a.p..

ถ้ากด Show จะดึงค่าของตัวแปร Class มาแสดง

else if (event.getSource() == showBtn) {

textField.setText(obj.toString()); }

39

ssc Homework #1Number

- number : int

+ Number()+ Number(int n)+ setValue(int n) : void+ getValue() : int+ toString() : String+ add(int n) : void

เพิ่ม method add เพื่อให้ Class Number

สามารถใช้บวกเลขได้

40

ssc Homework #1

http://202.44.47.108/~ssc/DC-hw/testNumber.html

41

ssc Homework #1

http://202.44.47.108/~ssc/DC-hw/testNumber.html

วิธีส่ง:

เปิดให้ดูก่อนเรียนต้นคาบหน้า

42

ssc Homework #2ให้นักศึกษาคิดหัวข้อ Assignment ว่าจะทําอะไร

พร้อมทั้งออกแบบ Class ว่าจะมี Class อะไรบ้าง

และภายในแต่ละ Class นั้นๆ จะม ีattribute และ

method อะไรบ้าง

ส่งต้นคาบหน้าโดยเขียนลงสมุดการบ้าน

กลุ่มละไม่เกิน 4 คน

43

top related