Các phương thức của lớp

Một phần của tài liệu phân tích, thiết kế hướng đối tượng bằng uml (Trang 99 - 100)

Phương thức (thao tác, hoặc hàm thành phần) của lớp mô tả các hành vi và các mối quan hệ của các đối tượng trong hệ thống. Mỗi phương thức được mô tả bởi phạm vi, tên gọi, danh sách các tham số và kiểu trả lại giá trị.

visibility name (arg1: DataType1, arg2: DataType2, …, argn: DataTypen): ReturnType Trong đó,

ƒ visibility khai báo phạm vi quan sát của phương thức trong lớp. visibility có thể là một trong các đặc tính: public, protected, private, hay mặc định giống nhưđối với các thuộc tính nhưđã nêu ở trên.

ƒ name là tên gọi của phương thức, theo qui ước thường là các động từ (cụm

động từ), viết hoa các chữ cái đầu tiên của các từ trừ từđầu tiên. ƒ argk là tên của tham số hình thức thứ k trong danh sách.

ƒ DataTypek là các kiểu thuộc tính, thường đó là các kiểu của các thuộc tính đã khai báo trong lớp.

ƒ ReturnType là kiểu dữ liệu trả lại sau khi phương thức kết thúc. Những phương thức không có kiểu trả lại (các thủ tục) thì sử dụng Void (void).

Ví dụ: trong lớp ThanhToan có phương thức

+ makePayment(upc: UPC, n: Integer): Boolean

Lưu ý: trong bảng thiết kế lớp, nhiều khi các phương thức chỉ cần hiển thị ngắn gọn tên và danh sách các tham số cho đơn giản. Ví dụ, phương thức trên có thể viết ngắn gọn: + makePayment(upc, n), trong đó upc là mã sản phẩm, n là số lượng mặt hàng mà khách hàng chọn mua.

Câu hỏi thường xuất hiện khi thiết kế các lớp là có những loại phương thức nào?

Nói chung có năm loại phương thức: nghiệp vụ, quản lý, truy cập, hiển thị (trao đổi)

và trợ giúp.

ƒ Phương thức nghiệp vụ (thực thi). Phương thức loại này đảm nhận một chức năng tác nghiệp mà lớp đối tượng cần thực hiện. Chúng được tìm ra từ những

thông điệp được gửi tới cho đối tượng của lớp trong các biểu đồ tương tác. Ví

dụ, khi đối tượng :ThanhToan nhận được thông điệp makePayment(soTien)

trong biểu đồ cộng tác (hay biểu đồ trình tự) thì lớp ThanhToan sẽ có phương thức makePayment(soTien).

ƒ Phương thức quản lý: phương thức quản lý các đối tượng của lớp, làm nhiệm vụ tạo lập, huỷ bỏđối tượng. Ví dụ, các toán tử tạo lập và các huỷ tử là thuộc nhóm này.

ƒ Phương thức truy cập. Theo qui định, những thuộc tính khai báo private hay

protected trong lớp là nhằm hạn chế việc truy cập của các đối tượng khác. Tuy nhiên, để trao đổi được với nhau thì nhiều đối tượng của các lớp khác lại cần truy cập đến những dữ liệu đó. Việc này thực hiện được thông qua những

phương thức truy cập đểđọc hay ghi (thay đổi) dữ liệu thành phần của các lớp. Ví dụ, lớp KhachHang có thuộc tính taiKhoan được khai báo là private để

không cho các đối tượng khác truy nhập tự do. Nhưng để xử lý được việc thanh toán với khách hàng thì hệ thống cũng phải có cách để truy cập được

taiKhoan của người mua hàng, do vậy phải có những phương thức như

getTaiKhoan() để đọc, hay setTaiKhoan() để cập nhật số tiền của khách hàng. Những phương thức loại này thường khai báo là public.

ƒ Phương thức trợ giúp: những phương thức mà chính các lớp chứa nó cần thực hiện những công việc được phân công. Đó thường là những phương thức có tính chất private, protected.

ƒ Phương thức hiển thị, trao đổi thông tin: những phương thức đảm nhận việc hiển thị thông tin ra các thiết bị ngoại vi như máy in, máy vẽ, màn hình, v.v. hay chuyển ra các kênh truyền thông trên mạng.

Một phần của tài liệu phân tích, thiết kế hướng đối tượng bằng uml (Trang 99 - 100)