• Các phương thức trừu tượng của lớp trừu tượng không được thực thi trong thân lớp. mà phải được thực thi ở tất cả các lớp kế thừa từ lớp trừu tượng đó[r]
(1)BÀI 4
(2)v1.0011106202 TÌNH HUỐNG DẪN NHẬP
• Các thành phần liệu cách thức thực hiện, thao tác liệu để thực
hiện công việc quản lý học viên trường đại học quốc gia cần thực theo
cách để viết chương trình, tổ chức lớp, đối tượng việc
dùng lại thành phần liệu phương thức thuận lợi
• Có thành phần liệu phương thức thực chương trình mà
người ta khơng muốn lớp khác kế thừa lại
• Khi lớp muốn kế thừa lớp đơn vị thứ ba cung cấp tiến hành kế thừa, chương trình lại dùng lại thành phầncủa lớp chương trình
cung cấp
Vậy thơng tin việc tiến hành thao tác quản lý học viên
(3)MỤC TIÊU
Trình bày khái niệm lớp trừu tượng?
Mô tả khác lớp trừu tượng lớp cụ thể?
Trình bày khái niệm giao diện, cách xây dựng thực thi giao diện
Kế thừa giao diện
(4)v1.0011106202
NỘI DUNG
Giới thiệu lớp trừu tượng
1
Giao diện thực thi giao diện C#
(5)1.1 LỚP TRỪU TƯỢNG
• Lớp trừu tượng gì?
• Các giới hạn lớp trừu tượng?
(6)v1.0011106202 1.1.1 KHÁI NIỆM
• Lớp trừu tượng lớp thiết lập sở cho lớp kế thừa mà khơng thể
có thể tồn
• Khai báo lớp trừu tượng từ khoá abstract:
(7)1.1.2 CÁC GIỚI HẠN
• Lớp trừu tượng khơng cho phép tạo thể lớp
• Bất lớp có phương thức trừu tượng phải khai báo lớp lớp trừu tượng
• Override chúng lớp dẫn xuất
• Các phương thức trừu tượng lớp trừu tượng không thực thi thân lớp
mà phải thực thi tất lớp kế thừa từ lớp trừu tượng • Phương thức lớp trừu tượng
Abstract Method Virtual Method Từ khoá: abstract Từ khoá: virtual
Chỉ có phần khai báo method kết thúc dấu “;”, Khơng cần có phần thực thi cho phương thức abstract lớp abstract
(8)v1.0011106202
Ví dụ
• Lớp trừu tượng: AbstractClass
• public abstract class AbstractClass
• {
• public AbstractClass()
• {
• }
• public abstract int AbstractMethod() ; • public virtual int VirtualMethod()
• {
• return 0;
• }
• }
Phương thức trừu tượng Lớp trừu tượng
(9)Lớp dẫn xuất từ lớp trừu tượng
13 public class DerivedClass : AbstractClass
14 {
15 public DerivedClass()
16 { }
17 public override int AbstractMethod()
18 {
19 return 0;
20 }
21 public override int VirtualMethod()
22 {
23 return base.VirtualMethod ();
24 }
1.1.2 CÁC GIỚI HẠN (tiếp theo)
(10)v1.0011106202 10
• Cịn gọi lớp niêm phong, khơng cho phép lớp khác kế thừa nó, ngược với lớp
abstract
• Sử dụng từ khố “sealed” thay cho từ khố “abstract” để có lớp sealed:
<Bổ từ truy cập> sealed class <Tên lớp>
• Sử dụng từ khố “sealed” trước phương thức để ngăn khơng cho lớp dẫn xuất
override