- 17
4.4.1 Các loại lớp trong biểu đồ
Biểu đồ lớp có thể chứa nhiều loại lớp khác nhau, chúng có thể là những lớp
thông thường, lớp tham số hoá, lớp hiện thực, lớp tiện ích, và lớp metaclass.
Lớpthamsốhoá (Parameterized Class)
Lớp tham số hoá là lớp được sử dụng để tạo ra một họ các lớp khác. Trong
những ngôn ngữ lập trình có kiểu mạnh như C++, lớp tham số hoá chính là lớp mẫu (template). Trong UML,cóthểkhaibáolớpthamsốhoá(lớpmẫu)Set chohọ cáclớp có cácphầntửlàkiểuTbấtkỳ,đượcxemnhưlàthamsốnhưsau:
- 73 -
Set T
insert(Te) remove(Te)
Hình4-6Lớpđượcthamsốhoá
Lớptham số hoá cóthể sửdụng đểthểhiện quyết định thiếtkế về cácgiao thức trao đổi giữa các lớp. Lớp tham sốhoá ítđược sửdụng trong mô hình khái niệm mà chủ yếu được sử dụng trong các mô hình cài đặt, nhưng cũng chỉ khi ngôn ngữ lập trìnhđượcchọnđểlậptrìnhcóhỗtrợ cơchếlớp mẫu(template class)nhưC++chẳng hạn. Cũngcầnlưuý làkhôngphảitấtcảcácngônngữlậptrình hướngđối tượngđều hỗtrợkiểulớpmẫu,vídụJavakhônghỗtrợ.
Lớphiệnthực (Instantiated Class)
Lớp hiện thựclàloạilớptham sốhoámàđốisố củanó làkiểugiátrịcụthể.Như
vậy, lớp tham số hoá làkhuôn để tạora các lớphiện thực. Ví dụ lớpSet<Complex>
tậpcácsốphức(Complex)làlớphiệnthựcđượcbiểudiễntrongUMLnhưhình4-7. Set<Complex>
insert(Complexe) remove(Complexe) Hình4-7Lớphiệnthựchoá
Lớptiệních (Class Utility)
Lớp tiện íchlàtậphợpcácthaotácđượcsửdụngnhiềunơitronghệthống,chúng
đượctổ chứcthành lớp tiện íchđể cáclớp khác có thểcùng sửdụng. Trongbiểu đồ, lớptiệníchđượcthểhiệnbằnglớp cóđườngviềnbóngnhưhình4-8(a).
Hình4-8(a)Lớptiệních (b) Giaodiện
Giaodiện(Interface)
Giaodiện làtậpnhữngthaotácquansátđượctừbênngoàicủamộtlớp và/hoặc một thành phần, vàkhôngcónội dung càiđặt của riênglớpđó. Giao diệnthuộc quan sátlogicvàcó thểxuấthiệntrongcảbiểuđồlớp vàbiểuđồthành phầnvớikýhiệuđồ hoạnhưhình4-8(b).