Sự khác biệt giữa tổng hợp và thành phần trong Python là gì?

Hiệp hội là một trong những khái niệm quan trọng nhất trong lập trình hướng đối tượng. Thật khó để phát triển phần mềm có cấu trúc tốt mà không nắm vững các khái niệm này. Nó định nghĩa các quy tắc giao tiếp giữa các lớp

Sự kết hợp

Đó là mối quan hệ giữa hai lớp và mối quan hệ đó được thiết lập thông qua các đối tượng của chúng. Mỗi đối tượng có vòng đời riêng và không có đối tượng chủ sở hữu. Đó là một loại quan hệ yếu. Nó có thể là một đối một, một đối nhiều, nhiều đối một hoặc nhiều đối nhiều

Ví dụ: học sinh và giáo viên, cả hai lớp được liên kết với nhau. Các đối tượng của mỗi lớp có vòng đời riêng và không có chủ sở hữu

tổng hợp

Đó là sự liên kết một chiều. Khi một đối tượng có thể truy cập một đối tượng khác thì mối quan hệ đó được gọi là tập hợp. Các đối tượng có thể tồn tại độc lập trong mối quan hệ này

Chúng ta có thể định nghĩa một cách ngắn gọn hơn, tập hợp là khi một đối tượng của một lớp có thể sở hữu hoặc truy cập đối tượng của một lớp khác

Hãy lấy một ví dụ về một sinh viên và bộ phận. Có hai lớp, một là sinh viên và một là khoa. Sinh viên được chỉ định một số đăng ký dựa trên bộ phận cụ thể. Hãy triển khai mã của nó trong python

Tập hợp được xác định bởi mối quan hệ Has-A giữa các đối tượng

Trong UML, nó được biểu thị bằng một đường thẳng có đầu mũi tên trống ở một đầu

 

Bây giờ tập hợp là gì?

lớp nhân viên.
def __init__[bản thân, tên, tuổi, lương].
chính mình. tên = tên
chính mình. tuổi = tuổi
bản thân. obj_salary = lương

def total_salary[self].
tự quay lại. obj_salary. anual_salary[]

Trong lớp Employee mới này, chúng ta thấy phương thức __init__ lấy trực tiếp một đối tượng tiền lương và phương thức total_salary của lớp employee đã sử dụng đối tượng đó để lấy tiền lương hàng năm. Loại mối quan hệ này được mô tả là 'Có - một'. Nó đọc nhân viên có một mức lương. Nhưng đừng nhầm lẫn là có lương có nhân viên vì sự liên kết giữa các hạng là một chiều cũng như một chiều. Các đối tượng của các lớp này là độc lập vì chúng tồn tại một mình và có thể tồn tại ngay cả sau khi xóa một trong số chúng. Hãy xem điều này hoạt động như thế nào để thực thi mã cho tập hợp

Bây giờ chúng ta có thể thấy rằng chúng ta đã tạo một đối tượng tiền lương trước tiên và chuyển nó đến một đối tượng nhân viên. Hai đối tượng này độc lập có nghĩa là ngay cả khi đối tượng lương chết đối tượng nhân viên vẫn tồn tại và tự làm việc. Đây là tập hợp và nó khác với thành phần. Khái niệm này được áp dụng khi bạn không thực hiện kế thừa cho lớp

Sự khác biệt giữa tổng hợp và thành phần là gì?

1. Liên kết giữa hai đối tượng minh họa cho mối quan hệ “có-một” được gọi là Tập hợp. Một thành phần xác định một phần của mối quan hệ và cả hai thực thể được kết nối với nhau. 2

Thành phần và tổng hợp trong Python là gì?

Khoa học dữ liệu thực tế sử dụng Python . Trong Aggregation , thực thể cha và con duy trì mối quan hệ Has-A nhưng cả hai cũng có thể tồn tại độc lập. Chúng ta có thể sử dụng thực thể cha và con một cách độc lập. two types of association which is used to represent relationships between two classes. In Aggregation , parent and child entity maintain Has-A relationship but both can also exist independently. We can use parent and child entity independently.

tổng hợp và thành phần với ví dụ là gì?

Tập hợp hàm ý một mối quan hệ trong đó phần tử con có thể tồn tại độc lập với phần tử gốc . Ví dụ. Lớp học [phụ huynh] và Học sinh [con]. Xóa Lớp học và Học sinh vẫn tồn tại. Thành phần ngụ ý một mối quan hệ mà đứa trẻ không thể tồn tại độc lập với cha mẹ. Ví dụ. Nhà [cha mẹ] và Phòng [con].

Sự khác biệt giữa thành phần thừa kế và tổng hợp là gì?

Kế thừa là phương pháp tạo một lớp mới bằng cách sử dụng các thuộc tính và phương thức của một lớp hiện có trong khi thành phần là một loại tập hợp đặc biệt ngụ ý quyền sở hữu . Vì vậy, đây là sự khác biệt chính giữa Kế thừa và Thành phần.

Chủ Đề