งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

ความสัมพันธ์ระหว่างคลาส (Class Relationship) Boonrit kidngan

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "ความสัมพันธ์ระหว่างคลาส (Class Relationship) Boonrit kidngan"— ใบสำเนางานนำเสนอ:

1 ความสัมพันธ์ระหว่างคลาส (Class Relationship) Boonrit kidngan

2 Class Diagram ถูกสร้างขึ้นจากมุมมองของนักพัฒนาโปรแกรม สามารถนำไปใช้ในการเขียนโปรแกรมโดยตรง แบ่งออกเป็น 3 ส่วนหลักๆ ได้แก่ ส่วนบนจะใช้สำหรับระบุชื่อของคลาส ส่วนกลางจะใช้สำหรับระบุข้อมูลหรือแอททริบิวต์ (Attribute) ส่วนล่างจะเป็นการระบุพฤติกรรมการทำงาน (method) Class’s name - attributeName : data type + method(arg list) : return type

3 การสร้าง Class Diagram กำหนดคลาสที่ใช้งานภายในระบบ กำหนดแอททริบิวต์ของคลาส กำหนดการทำงานของคลาสในรูปของเมธอด กำหนดความสัมพันธ์ระหว่างคลาส

4 Student id : String name : String test : int mid : int finals : int Student - id : String - name : String - test : int - mid : int - finals : int + getID() : String + getName() : String + calGPA(test, mid, final) : double

5 สิทธิสัญลักษณ์การเข้าถึงข้อมูลภายใน Public+ ทุกๆ ออปเจคภายในระบบ Protected# ออปเจคของคลาสที่มีคุณลักษณะเป็นคลาสสืบทอด Private- ออปเจคจากคลาสหนึ่งๆ โดยเฉพาะ

6 ความสัมพันธ์ระหว่างคลาส โดยปกติแล้วคลาส X และคลาส Y จะมี ความสัมพันธ์กันในกรณีดังต่อไปนี้ : ออปเจคของคลาส X ทำหน้าที่ส่ง message ไป ยังออปเจคของคลาส Y ออปเจคของคลาส X สร้างออปเจคของคลาส Y ออปเจคของคลาส X มี attribute ที่เป็นออปเจค จากคลาส Y หรือกลุ่มของออปเจคจากคลาส Y ออปเจคของคลาส X ทำหน้าที่รับ message จากออปเจคของคลาส Y ในรูปของ argument

7 Unrelated Classes

8 class CarDemo1 { public static void main (String [] args){ Student st=new Student( ,”hunsa”); Book book=new Book(“java”); System.out.print(st.getName() +” read “ +book.getName()); }

9 Dependency Relationship ( ความสัมพันธ์แบบขึ้นอยู่กับ ) เป็นความสัมพันธ์ที่เกิดขึ้นจากการทำงานของคลาสหนึ่งที่มี ลักษณะขึ้นอยู่กับคลาสอื่น ๆ ความสัมพันธ์ที่เกิดขึ้นนี้จะมี ระยะเวลาสั้น ๆ ใน UML ความสัมพันธ์แบบนี้อาจสรุปการ ทำงานได้ดังนี้ ออปเจคอาจสร้างออปเจคอื่นในลักษณะที่เป็นส่วนหนึ่ง ของเมธอด เพื่อร้องขอให้เกิดการกระทำสิ่งใดสิ่งหนึ่ง จนกระทั่งเสร็จสิ้น และความสัมพันธ์นั้น ๆ จะสิ้นสุดลง ทันที ออปเจคอาจทำการสร้างออปเจคอื่นในลักษณะที่เป็น ส่วนหนึ่งของเมธอด เพื่อกระทำสิ่งใดสิ่งหนึ่งและคืนค่า กลับไปยังเมธอดที่เรียกใช้ ออปเจคอาจเรียกใช้เมธอดที่รับค่าพารามิเตอร์ในรูปของ ของออปเจค เพื่อใช้และแก้ไขข้อมูลภายในออปเจคนั้น ๆ จากนั้นความสัมพันธ์จะสิ้นสุดลงเมื่อการทำงานของ เมธอดเสร็จสิ้น

10 Dependency Relationship

11 class Engine { private String type; Engine (String type) { this.type = type; } public String getType () { return type; } class Car { private String model; private String manufacturer; public Car (String model, String manufacturer) { this.model = model; this.manufacturer = manufacturer; } public String getEngine ( Engine e) { return e.getType(); } public String getModel () { return model; } public String getManufacturer () { return manufacturer; }

12 Association Relationship ( ความสัมพันธ์แบบเกี่ยวข้อง โดยตรง ) ความสัมพันธ์แบบนี้จะคล้ายกับความสัมพันธ์ แบบ Dependency แต่จะแตกต่างกันตรงที่ ช่วงเวลาที่เกิดความสัมพันธ์กันจะมีระยะ เวลานาน และมีลักษณะเป็นความสัมพันธ์ แบบโครงสร้าง ความสัมพันธ์แบบนี้อาจสร้างขึ้นได้โดยการ การกำหนดคลาสอื่นในรูปของแอททริบิวต์ ภายในคลาส และสามารถเรียกใช้เมธอด จากคลาสนั้นได้ในกรณีที่ต้องการ ความสัมพันธ์แบบนี้อาจถูกมองในรูปของการ มีอยู่ (has-a) ได้ เช่น ออปเจคจากคลาส หนึ่งมีค่าอ้างอิงไปยังออปเจคจากคลาสอื่น ได้

13 แสดงความเกี่ยวข้องระหว่าง นักศึกษากับรถ

14 Aggregation เป็นรูปแบบหนึ่งของ Association ซึ่งมีความสัมพันธ์ ระหว่าง Whole และ Parts โดย เรียกความสัมพันธ์นี้ว่า Whole - part ซึ่ง Aggregation (Whole- part ) นี้ยังแบ่งออกเป็น 2 รูปแบบคือ แบบ Shared Aggregation และ Composite Aggregation

15 Shared Aggregation หมายถึง ความสัมพันธ์แบบเป็น ส่วนหนึ่งของ (a part of ) โดยจะมี คลาสที่ใหญ่ที่สุดเป็นออบเจ็กต์ หลัก และมีคลาสอื่น ๆ เป็นส่วนหนึ่ง ของออบเจ็กต์ ดังรูป ที่สามารถแยก จากกันได้ แสดงความสัมพันธ์แบบ Aggregation

16 Shared Aggregation public class Car { private String nameCar; private engine myEngine; private wheel myWheel; public void run( ) { } }

17 Composite Aggregation หมายถึง ความสัมพันธ์ที่มีความ ข้องเกี่ยวกันเสมอ เช่นห้องเรียน จะไม่สามารถมีได้หากไม่มี นักศึกษา ดังรูป

18 public class ClassRoom { private Sdudent[] studentIn; public String nameclassroom; public String getNameClassRoom( ) { return nameclassroom; }

19 Generalization หมายถึง ความสัมพันธ์ระหว่าง คลาสในลักษณะของการสืบ ทอดคุณสมบัติ จากโครงสร้าง คลาสหนึ่งไปยังโครงสร้างอีก คลาสหนึ่ง (SuperClass และ SubClass) ดังรูป

20 แสดงความสัมพันธ์แบบ Generalization Peo ple Student Teacher


ดาวน์โหลด ppt ความสัมพันธ์ระหว่างคลาส (Class Relationship) Boonrit kidngan

งานนำเสนอที่คล้ายกัน


Ads by Google