Lập trình hệ điều hành
11/01/1211/01/12 16:3816:38Lập trình hướng đối tượngLập trình hướng đối tượngHà Văn SangKhoa HTTT,Academy Of Finance, HanoiHà Văn SangBộ môn: Tin học TC – KTKhoa: Hệ Thống Thông Tin Kinh tế - Học Viện Tài ChínhTel: 0982.165.568Email: sanghv@hvtc.edu.vnWebsite: http://www.hvtc.edu.vn/sanghvLập trình hướng đối tượng 11/01/1211/01/12 16:3816:38Lập trình hướng đối tượngLập trình hướng đối tượngHà Văn SangKhoa HTTT,Academy Of Finance, HanoiCHƯƠNG IV Object Oriented Programing– Information Systems Department31. Khái niệm1. Khái niệmKế thừa: là khả năng cho phép xây dựng một lớp mớiĐược thừa hưởng các thành phần từ một hay nhiều lớp đã có (lớp cơ sở).Trong lớp ta có thể bổ sung thêm các thành phần hoặc định nghĩa lại các thành phầnVí dụ 1:Xây dựng lớp PS1 {ts, ms, nhập, in, tối giản}Lớp PS2 {ts, ms, nhập, in, tối giản, cộng, trừ, nhân chia phân số} Object Oriented Programing– Information Systems Department41. Khái niệm (tiếp)1. Khái niệm (tiếp)Ví dụ 2: Yêu cầu xây dựng 3 lớpLớp NGƯỜI Lớp SV Lớp GVNGƯỜIDl: ht, ns, gtPt: nhap(), in()SVDl: ht, ns, gtPt: nhap(), in(), xếp loại()GVDl: ht, ns, gtPt: nhap(), in(), tangluong() Object Oriented Programing– Information Systems Department51. Khái niệm (tiếp)1. Khái niệm (tiếp)Kế thừa tạo ra mô hình phân cấp:PS1PS2NGƯỜISV GVMô hình kế thừa tạo ra một quan hệ “is a”Ví dụ: một đối tượng SV “là một” loại thuộc lớp NGƯỜI Object Oriented Programing– Information Systems Department61. Khái niệm (tiếp)1. Khái niệm (tiếp)Các loại kế thừa:PS1PS2CA BKế thừa đơn: chỉ có một lớp cơ sởĐa kế thừa: có nhiều hơn một lớp cơ sở Object Oriented Programing– Information Systems Department72. Xây dựng lớp dẫn xuất2. Xây dựng lớp dẫn xuấtCú phápclass <tên lớp con>:[kiểu dẫn xuất]<tên lớp cha1>,[kiểu dẫn xuất]<tên lớp cha 2>… {// Các thành phần của lớp con}; Object Oriented Programing– Information Systems Department82. Xây dựng lớp dẫn xuất2. Xây dựng lớp dẫn xuấtTrong đó:Kiểu dẫn xuất có thể là:publicpublic: tất cả các tp public của lớp cha sẽ là pubic ở lớp conprivate: tất cả các thành phần public của lớp cha sẽ là private ở lớp conprotectedprivate (ngầm định) Object Oriented Programing– Information Systems Department93. Quyền truy xuất3. Quyền truy xuất(1) Quyền truy xuất tp đó ở lớp cha :(2) Kiểu dẫn xuấtpublicprotectedprivatepublicprotectedprotectedprivateprotectedprivateprivateprivateprivatepublicprotectedprivate(1)(2)Quyền truy xuất ở lớp con Object Oriented Programing– Information Systems Department1 0Chú ýChú ýVí dụ: Phân sốChú ý:Có thể gán 1 đối tượng của lớp con vào một đối tượng của lớp chaPS a; PS1 b;a=b;// okb=a; // problemKhi gán, các tp thừa (ko có trong lớp cha) sẽ bị cắt tỉa và chuyển đổi kiểu lên an toànbị cắt lấp đầy [...]... Department 18 7 Lớp cơ sở ảo Xét trường hợp: Theo nguyên lý kế thừa: trong C sẽ có hai thành phần x Vấn đề xảy ra: Giả sử trong lớp A có thành phần x Trong lớp B cũng có thành phần x Xây dựng lớp C kế thừa từ lớp A và B Khi truy cập thành phần x trong C thì chương trình dịch không biết thành phần x đó là của lớp A hay B Sự nhập nhằng trong kế thừa Để giải quyết: Ta xác định phạm vi... Dữ liệu: phòng ban, hệ số lương, phụ cấp Phương thức: định nghĩa lại pt nhập, in để có đầy đủ thông tin Chương trình chính: nhập mảng các NV có n người (nf5 là private, f6 là public Object Oriented Programing– Information Systems Department 11 4 Định nghĩa lại quyền... tập (week 6) Bài 2: Cài đặt lớp SP1 gồm có: Dữ liệu: phần thực, phần ảo Phương thức: nhập,in Chương trình chính: nhập 2 sp ab, in ra a, b Cài đặt lớp SP2 kế thừa SP1 và bổ sung: Dữ liệu: Phương thức: toán tử >>, =, , =, . sanghv@hvtc.edu.vnWebsite: http://www.hvtc.edu.vn/sanghvLập trình hướng đối tượng 11/01/1211/01/12 16:3816:3 8Lập trình hướng đối tượngLập trình hướng đối tượngHà Văn SangKhoa. 16:3816:3 8Lập trình hướng đối tượngLập trình hướng đối tượngHà Văn SangKhoa HTTT,Academy Of Finance, HanoiHà Văn SangBộ môn: Tin học TC – KTKhoa: Hệ Thống