Sự khác biệt giữa tập hợp và thành phần trong Java

Sự khác biệt chính - Tập hợp đấu với Thành phần trong Java

Tập hợp là một liên kết giữa hai đối tượng mô tả mối quan hệ có-có một mối quan hệ. Thành phần là loại tổng hợp cụ thể hơn bao hàm quyền sở hữu. Các sự khác biệt chính giữa tập hợp và thành phần trong Java là, nếu đối tượng được chứa có thể tồn tại mà không có sự tồn tại của đối tượng sở hữu thì đó là một tập hợp và nếu đối tượng được chứa không thể tồn tại mà không có sự tồn tại của đối tượng sở hữu thì đó là một thành phần.

Lập trình hướng đối tượng (OOP) là một mô hình chính trong phát triển phần mềm. Nó được sử dụng để mô hình hóa phần mềm bằng cách sử dụng các đối tượng. Các đối tượng được tạo bằng các lớp. Một lớp bao gồm các thuộc tính và phương thức. Có nhiều đối tượng trong phần mềm. Mỗi đối tượng hợp tác với nhau thông qua tin nhắn đi qua. Mối quan hệ giữa hai đối tượng được gọi là một hiệp hội. Cả hai tập hợp và thành phần là hai loại kết hợp. Mối quan hệ có một mối quan hệ của người mô tả rằng một đối tượng có thể sử dụng một đối tượng khác. Tập hợp và thành phần có thể được thực hiện trong các ngôn ngữ hỗ trợ OOP. Nếu đối tượng chứa có thể tồn tại mà không có sự tồn tại của đối tượng sở hữu, thì sự liên kết giữa hai đối tượng đó là một tập hợp. Nếu đối tượng chứa không thể tồn tại mà không có sự tồn tại của đối tượng sở hữu, thì liên kết giữa hai đối tượng đó là một thành phần.

NỘI DUNG

1. Tổng quan và sự khác biệt chính
2. Tập hợp trong Java là gì
3. Thành phần trong Java là gì
4. Điểm tương đồng giữa tập hợp và thành phần trong Java
5. So sánh cạnh nhau - Tổng hợp so với thành phần trong Java ở dạng bảng
6. Tóm tắt

Tập hợp trong Java là gì?

Tập hợp là một loại hiệp hội. Nếu một lớp có một tham chiếu thực thể, nó được gọi là tổng hợp. Tập hợp đại diện cho mối quan hệ has-a. Một đối tượng Sinh viên có thể có các thuộc tính như student_id, tên, địa chỉ. Đối tượng này cũng có thể có một đối tượng khác gọi là địa chỉ với thông tin riêng như thành phố, tiểu bang, quốc gia. Trong tình huống này, Học sinh có một địa chỉ tham chiếu thực thể. Đó là một mối quan hệ của người Viking.

Hình 01: Lớp Marks

Hình 02: Chương trình chính để mô tả tập hợp

Theo chương trình trên, các lớp Marks bao gồm ba thuộc tính là điểm Toán, tiếng Anh và Khoa học. Học sinh có một đối tượng của Marks. Nó có các thuộc tính riêng của nó là các dấu hiệu của toán học, tiếng Anh và khoa học. Trong phương thức chính, một đối tượng của Marks được tạo và các giá trị mark được gán. Đối tượng học sinh là s1 có thể sử dụng đối tượng đánh dấu là m1. Do đó, Học sinh và Nhãn hiệu có mối quan hệ có một mối quan hệ. Đối tượng Marks có thể tồn tại mà không cần Đối tượng sinh viên. Do đó, nó là một tập hợp.

Thành phần trong Java là gì?

Thành phần là một loại hiệp hội. Nó là một hình thức tổng hợp cụ thể ngụ ý quyền sở hữu. Giả sử rằng có hai lớp được gọi là lớp A và B. Nếu đối tượng của lớp B không thể tồn tại nếu đối tượng của lớp A bị phá hủy, thì đó là một thành phần. Một cuốn sách bao gồm nhiều trang. Nếu cuốn sách bị phá hủy, các trang cũng sẽ bị phá hủy. Các đối tượng trang không thể tồn tại mà không có đối tượng sách. Tham khảo chương trình dưới đây.

Hình 03: Lớp học

Hình 04: Lớp học

Hình 05: Chương trình chính để mô tả Thành phần

Theo chương trình trên, Lớp học có hai thuộc tính là tên và numOfStudents. Trường là một bộ sưu tập các đối tượng Lớp học. Trong phương thức chính, hai đối tượng Lớp học được tạo. Những người được thêm vào 'lớp học'. Những "phòng học" này được chuyển cho đối tượng của trường. Cuối cùng, tên lớp học và số học sinh được in bằng cách lặp qua bộ sưu tập. Nếu đối tượng Trường bị phá hủy, các đối tượng Lớp học cũng sẽ phá hủy. Đây là một ví dụ về thành phần. Nó cũng chứa mối quan hệ 'có-a' và cũng ngụ ý quyền sở hữu.

Mối quan hệ giữa tập hợp và thành phần trong Java là gì?

  • Tập hợp và Thành phần là hai loại Hiệp hội và Thành phần là một loại Tập hợp chuyên biệt. Thành phần là tập hợp con của Tập hợp.

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

Tổng hợp so với thành phần trong Java

Tập hợp là sự kết hợp giữa hai đối tượng mô tả mối quan hệ của người có mối quan hệ. Thành phần là một loại tổng hợp cụ thể hơn bao hàm quyền sở hữu.
 Sử dụng
Tập hợp được sử dụng khi một đối tượng sử dụng một đối tượng khác. Thành phần được sử dụng khi một đối tượng sở hữu một đối tượng khác.
Ảnh hưởng đến các đối tượng
Tổng hợp, tiêu diệt đối tượng sở hữu sẽ không ảnh hưởng đến đối tượng chứa. Trong thành phần, phá hủy đối tượng sở hữu sẽ ảnh hưởng đến đối tượng chứa.

Tóm tắt - Tổng hợp đấu với Thành phần trong Java

Tập hợp và Thành phần là hai khái niệm trong OOP. Mối quan hệ có một mối quan hệ của người mô tả rằng một đối tượng có thể sử dụng một đối tượng khác. Tập hợp là một liên kết giữa hai đối tượng mô tả mối quan hệ có-có một mối quan hệ. Thành phần là một loại tổng hợp cụ thể hơn bao hàm quyền sở hữu. Sự khác biệt giữa tập hợp và thành phần trong Java là, nếu đối tượng được chứa có thể tồn tại mà không có sự tồn tại của đối tượng sở hữu thì đó là một tập hợp và nếu đối tượng được chứa không thể tồn tại mà không có sự tồn tại của đối tượng sở hữu, thì đó là một thành phần.

Tài liệu tham khảo:

1. Hiệp hội, Thành phần và Tập hợp trong Java. GeekforGeek, 8 tháng 2 năm 2018. Có sẵn tại đây 
2. Tập hợp trong Java - Javatpoint. Điểm Java. Có sẵn ở đây