ความแตกต่างที่สำคัญ – การรวมเทียบกับองค์ประกอบใน Java
Aggregation คือการเชื่อมโยงระหว่างวัตถุสองชิ้นที่อธิบายความสัมพันธ์แบบ “has-a” องค์ประกอบเป็นการรวมประเภทที่เฉพาะเจาะจงมากขึ้นซึ่งแสดงถึงความเป็นเจ้าของ ความแตกต่างที่สำคัญระหว่างการรวมและองค์ประกอบใน Java คือ ถ้าวัตถุที่มีอยู่สามารถดำรงอยู่ได้โดยปราศจากการมีอยู่ของวัตถุที่เป็นเจ้าของ มันคือการรวม และหากวัตถุที่มีอยู่ไม่สามารถอยู่ได้โดยปราศจากการมีอยู่ของวัตถุที่เป็นเจ้าของ มันคือองค์ประกอบ.
การเขียนโปรแกรมเชิงวัตถุ (OOP) เป็นกระบวนทัศน์สำคัญในการพัฒนาซอฟต์แวร์มันถูกใช้เพื่อจำลองซอฟต์แวร์โดยใช้วัตถุ วัตถุถูกสร้างขึ้นโดยใช้คลาส คลาสประกอบด้วยคุณสมบัติและวิธีการ มีหลายอ็อบเจ็กต์ในซอฟต์แวร์ แต่ละอ็อบเจ็กต์ทำงานร่วมกันผ่านการส่งข้อความ ความสัมพันธ์ระหว่างสองวัตถุเรียกว่าความสัมพันธ์ ทั้งการรวมและองค์ประกอบเป็นความสัมพันธ์สองประเภท ความสัมพันธ์ "has-a" อธิบายว่าวัตถุหนึ่งสามารถใช้วัตถุอื่นได้ การรวมและองค์ประกอบสามารถนำไปใช้ในภาษาที่รองรับ OOP หากวัตถุที่มีอยู่สามารถดำรงอยู่ได้โดยปราศจากการมีอยู่ของวัตถุที่เป็นเจ้าของ การเชื่อมโยงระหว่างวัตถุทั้งสองนั้นเป็นการรวมเข้าด้วยกัน หากวัตถุที่มีอยู่ไม่สามารถอยู่ได้โดยปราศจากการมีอยู่ของวัตถุที่เป็นเจ้าของ การเชื่อมโยงระหว่างวัตถุทั้งสองนั้นเป็นองค์ประกอบ
การรวมในภาษาจาวาคืออะไร
การรวมเป็นประเภทของการเชื่อมโยง ถ้าคลาสมีการอ้างอิงเอนทิตี จะเรียกว่าการรวม การรวมแสดงถึงความสัมพันธ์แบบมีวัตถุ Student สามารถมีคุณสมบัติเช่น student_id, ชื่อ, ที่อยู่ ออบเจ็กต์นี้ยังสามารถมีอ็อบเจ็กต์อื่นที่เรียกว่าแอดเดรสซึ่งมีข้อมูลเป็นของตัวเอง เช่น เมือง รัฐ ประเทศ ในสถานการณ์นี้ นักเรียนมีที่อยู่อ้างอิงเอนทิตี มันเป็นความสัมพันธ์แบบ “ฮา-อะ”
รูปที่ 01: Marks Class
รูปที่ 02: โปรแกรมหลักเพื่ออธิบายการรวม
ตามโปรแกรมด้านบน คะแนนของชั้นเรียนประกอบด้วยคุณสมบัติสามประการคือ เครื่องหมายคณิตศาสตร์ ภาษาอังกฤษ และวิทยาศาสตร์ นักเรียนมีวัตถุของเครื่องหมายมีคุณสมบัติเป็นเครื่องหมายของคณิตศาสตร์ ภาษาอังกฤษ และวิทยาศาสตร์ ในเมธอดหลัก ออบเจ็กต์ของ Marks จะถูกสร้างขึ้นและกำหนดค่าเครื่องหมาย วัตถุนักเรียนที่เป็น s1 สามารถใช้วัตถุเครื่องหมายซึ่งเป็น m1 ดังนั้น Student และ Marks จึงมีความสัมพันธ์แบบ “has-a” วัตถุ Marks สามารถดำรงอยู่ได้โดยไม่มีวัตถุของนักเรียน ดังนั้นจึงเป็นการสรุปรวม
องค์ประกอบในภาษาจาวาคืออะไร
องค์ประกอบเป็นประเภทของการเชื่อมโยง เป็นรูปแบบเฉพาะของการรวมที่แสดงถึงความเป็นเจ้าของ สมมติว่ามีสองคลาสที่เรียกว่าคลาส A และ B หากวัตถุของคลาส B ไม่สามารถมีอยู่ได้หากวัตถุของคลาส A ถูกทำลาย นั่นคือองค์ประกอบ หนังสือประกอบด้วยหลายหน้า หากหนังสือถูกทำลาย หน้าก็จะถูกทำลายด้วย วัตถุหน้าไม่สามารถอยู่ได้หากไม่มีวัตถุหนังสือ อ้างอิงโปรแกรมด้านล่าง
รูปที่ 03: ห้องเรียนในห้องเรียน
รูปที่ 04: ชั้นเรียนในโรงเรียน
รูปที่ 05: โปรแกรมหลักเพื่ออธิบายการแต่งเพลง
ตามโปรแกรมข้างต้น Classroom มีคุณสมบัติสองอย่างคือ ชื่อ และ numOfStudents โรงเรียนคือชุดของวัตถุในห้องเรียน ในวิธีการหลัก วัตถุใน Classroom สองรายการจะถูกสร้างขึ้น สิ่งเหล่านี้ถูกเพิ่มใน 'ห้องเรียน' 'ห้องเรียน' เหล่านี้จะถูกส่งต่อไปยังวัตถุของโรงเรียนสุดท้าย ชื่อห้องเรียนและจำนวนนักเรียนจะถูกพิมพ์โดยการวนซ้ำผ่านคอลเล็กชัน ถ้าวัตถุโรงเรียนถูกทำลาย วัตถุในห้องเรียนก็จะทำลายด้วย นี่คือตัวอย่างการจัดองค์ประกอบ นอกจากนี้ยังมีความสัมพันธ์ 'has-a' และยังแสดงถึงความเป็นเจ้าของ
ความสัมพันธ์ระหว่างการรวมและองค์ประกอบในภาษาจาวาคืออะไร
การรวมและองค์ประกอบเป็นความสัมพันธ์สองประเภทและองค์ประกอบเป็นการรวมประเภทเฉพาะ องค์ประกอบเป็นส่วนย่อยของการรวม
ความแตกต่างระหว่างการรวมและองค์ประกอบใน Java คืออะไร
การรวมเทียบกับองค์ประกอบในภาษาจาวา |
|
Aggregation เป็นความสัมพันธ์ระหว่างวัตถุสองชิ้นที่อธิบายความสัมพันธ์ "มี" | การแต่งเป็นการรวมประเภทที่เฉพาะเจาะจงมากขึ้นซึ่งแสดงถึงความเป็นเจ้าของ |
การใช้งาน | |
การรวมจะใช้เมื่อวัตถุหนึ่งใช้วัตถุอื่น | องค์ประกอบจะใช้เมื่อวัตถุหนึ่งเป็นเจ้าของวัตถุอื่น |
มีผลกระทบต่อวัตถุ | |
โดยรวมแล้ว การทำลายวัตถุที่เป็นเจ้าของจะไม่ส่งผลกระทบต่อวัตถุที่บรรจุอยู่ | ในการจัดองค์ประกอบ การทำลายวัตถุที่เป็นเจ้าของจะส่งผลต่อวัตถุที่บรรจุ |
สรุป – การรวมเทียบกับองค์ประกอบในภาษาจาวา
Aggregation and Composition เป็นสองแนวคิดใน OOP ความสัมพันธ์ "has-a" อธิบายว่าวัตถุหนึ่งสามารถใช้วัตถุอื่นได้ การรวมเป็นความสัมพันธ์ระหว่างสองอ็อบเจ็กต์ที่อธิบายความสัมพันธ์แบบ "มี-a" องค์ประกอบเป็นการรวมประเภทที่เฉพาะเจาะจงมากขึ้นซึ่งแสดงถึงความเป็นเจ้าของความแตกต่างระหว่างการรวมและการแต่งใน Java ก็คือ ถ้าวัตถุที่มีอยู่สามารถดำรงอยู่ได้โดยปราศจากการมีอยู่ของวัตถุที่เป็นเจ้าของ มันคือการรวมและถ้าวัตถุที่มีอยู่ไม่สามารถดำรงอยู่ได้หากไม่มีวัตถุที่เป็นเจ้าของ มันคือองค์ประกอบ