intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Lập trình hướng đối tượng: Chương 3 - TS. Trương Quốc Định

Chia sẻ: Thanh Hoa | Ngày: | Loại File: PPT | Số trang:64

62
lượt xem
4
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng "Lập trình hướng đối tượng - Chương 3: Sơ đồ lớp (class)" cung cấp cho người đọc các kiến thức: Khái niệm sơ đồ lớp, các thành phần trong sơ đồ lớp. Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lập trình hướng đối tượng: Chương 3 - TS. Trương Quốc Định

  1. Chương 3 : Sơ đồ lớp (class ) GV : TS. Trương Quốc Định
  2. Nội dung  Khái niệm sơ đồ lớp  Các thành phần trong sơ đồ lớp 2
  3. Khái niệm sơ đồ lớp  Được xem là một trong số các mô hình quan trọng của  pp phân tích hướng đối tượng  Mô tả cấu trúc tĩnh của hệ thống  Mô tả thành phần dữ liệu của hệ thống 3
  4. Các thành phần trong sơ đồ lớp  Lớp  Thuộc tính  Phương thức  Quan hệ  Associations  Generalization  Dependency  Realization  Ràng buộc, chú thích 4
  5. Lớp  Là khái niệm cho phép mô tả một tập hợp các đối tượng  có cùng các đặc tính:   cùng một ngữ nghĩa,   có chung các thuộc tính, các phương thức và các quan hệ.  Một đối tượng là một thể hiện của lớp. Class + Attribute1 + Attribute2 + Operation1() + Operation2() 5
  6. Lớp  Stereotype  Lớp biên (boundary class). Lớp biên là lớp nằm trên biên hệ  thống và môi trường. Chúng có thể là biểu mẫu (form), báo  cáo (report), giao diện với phần cứng như máy in, máy quét…  và là giao diện với các hệ thống khác.  Lớp thực thể (entity class). Lớp thực thể lưu trữ thông tin  mà nó sẽ được ghi vào bộ nhớ ngoài. Thí dụ lớp Mon_hoc là  lớp thực thể.  Lớp điều khiển (control class). Lớp điều khiển có trách  nhiệm điều phối hoạt động của các lớp khác.  Lop_Bien Lop_Thuc_The Lop_Dieu_Khien 6
  7. Lớp  Lớp biên  Giao diện người dùng  Tập trung vào thông tin được thể hiện, tương tác như thế nào  Không tập trung vào các hiệu ứng hình ảnh  Ví dụ ­ Form lập hóa đơn bán hàng  Giao diện hệ thống  Tập trung vào các chuẩn giao tiếp  Không tập trung vào làm thế nào cài đặt các chuẩn giao tiếp đó 7
  8. Lớp  Lớp điều khiển  Điều khiển, phối hợp các hoạt động của hệ thống  Phân phối công việc cho các lớp  Điều khiển lớp biên và lớp thực thể  8
  9. Lớp   Abstract class  Là lớp không thể khởi tạo trực tiếp đối tượng từ nó.  Lớp trừu tượng được sử dụng với mục tiêu ạo các lớp kế  thừa từ nó.  Các lớp kế thừa có thể là lớp trừu tượng hoặc không. 9
  10. Lớp  Interface  Là lớp không có thuộc tính và các phương thức là các phương  thức ảo.  Các phương thức không được cài đặt.  Các phương thức sẽ được cài đặt trong các lớp kế thừa. 10
  11. Các thành phần của Lớp  Tên lớp :   Phải có nghĩa, bắt đầu bằng chữ hoa  Nếu được đóng gói, cần đặc tả các gói bao chứa nó theo thứ  tự từ lớn đến nhỏ, phân cách nhau bởi dấu ‘:’   Thuộc tính  Đặc tả bởi tên, kiểu dữ liệu, giá trị khởi tạo  Tên thuộc tính phải duy nhất trong lớp đó  Các kiểu dữ liệu chuẩn của UML 2.0 : String, Integer, Long,  Boolean  Phương thức  Đặc tả kiểu trả về (nếu có)  Đặc tả danh sách các đối số và kiểu tương ứng 11
  12. 12
  13. Các thành phần của lớp  Thuộc tính  Phạm vi  Public. Các thuộc tính có tính chất này sẽ  có thể truy xuất từ mọi  lớp khác. Bất kỳ lớp nào trong hệ thống đều có thể quan sát và sửa  đổi giá trị của thuộc tính.  Private. Thuộc tính được gán tính chất này thì sẽ không nhìn thấy  được từ lớp khác.   Protected. Thuộc tính có tính chất này được chính lớp của nó và các  lớp phân cấp dưới nó (lớp kế thừa) có thể xâm nhập.   Package Implemetation. Thuộc tính được gán tính chất này cho  thấy nó là public, nhưng chỉ các lớp trong gói mới xâm nhập được.  13
  14. Các thành phần trong sơ đồ lớp  Lớp  Thuộc tính  Thuộc tính tĩnh (static) : chỉ có một bản sao của thuộc tính dùng  chung cho mọi đối tượng của lớp  Thuộc tính suy diễn (Derived) : giá trị được tính từ 1 hay nhiều  thuộc tính khác 14
  15. Các thành phần của lớp  Phương thức  Operation Name (arg1: arg1 data type, arg2: arg2 data type…): return  type.  Các loại phương thức trên lớp  Thao tác cài đặt (implemetor). Thao tác này cài đặt một vài chức  năng tác nghiệp. Chúng được tìm ra từ các biểu đồ tương tác. Biểu  đồ tương tác tập trung vào các chức năng tác nghiệp, hầu như mỗi  thông điệp trên biểu đồ được ánh xạ thành thao tác cài đặt.  Thao tác quản lý (manager). Thao tác manager quản lý việc tạo  lập và hủy bỏ các đối tượng. Ví dụ, toán tử khởi tạo và hủy.  Thao tác xâm nhập (access). Dùng để thâm nhập các thuộc tính có  tính chất private hay protected.  Thao tác trợ giúp (helper). Thao tác Helper là các thao tác mà chính  lớp chứa nó cần đến để hực hiện trách nhiệm, nhưng các lớp khác  không cần biết gì về chúng 15
  16. Các thành phần trong sơ đồ lớp  Quan hệ  Quan hệ biểu diễn sự kết nối ngữ nghĩa giữa các lớp, nó cho  phép một lớp biết về các thuộc tính, thao tác và quan hệ của  lớp khác có quan hệ với nó.  Các quan hệ được thể hiện trên sơ đồ lớp. Giữa các lớp có  bốn kiểu quan hệ chính, đó là:   Kết hợp (association),   Phụ thuộc (dependencies),   Kết tập (aggregation) và   Khái quát hóa (generalization). 16
  17. Quan hệ kết hợp  Quan hệ kết hợp  Là kết hợp ngữ nghĩa giữa hai lớp  Có thể định nghĩa tự thân (các đối tượng của cùng một lớp có  kết hợp với nhau).  Kết hợp 1 chiều hoặc 2 chiều  2 lớp có quan hệ kết hợp với nhau nghĩa là các đối tượng  thuộc hai lớp này có thể trao đổi thông điệp với nhau. 17
  18. A + B_Quan_He_A + A_Quan_He_B B + AttributeA: Integer + AttributeB: String // Generated by StarUML(tm) Java Add-In // Generated by StarUML(tm) Java Add-In // // // @ Project : Untitled // @ Project : Untitled // @ File Name : A.java // @ File Name : B.java // @ Date : 8/23/2011 // @ Date : 8/23/2011 // @ Author : // @ Author : // // public class A { public class B { public Integer AttributeA; public String AttributeB; public B A_Quan_He_B; public A B_Quan_He_A; } } 18
  19. Role name Association name instructor StaffMember Student 1..* instructs * Role Navigable Multiplicity (uni-directional) association * pre - requisites Courses 0..3 Reflexive association 19
  20. Quan hệ phụ thuộc  Quan hệ phụ thuộc mô tả sự thay đổi một lớp nào đó  (the supplier) sẽ làm thay đổi lớp còn lại (the client).   Quan hệ phụ thuộc thường không có tên.  Ví dụ : Trong ứng dụng trang bán hàng trực tuyến, lớp  “Giỏ hàng” sẽ phụ thuộc lớp “Sản phẩm” vì lớp “Giỏ  hàng” sẽ sử dụng lớp “Sản phẩm” như là một tham số  của phương thức thêm hàng vào giỏ. 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2