Nội dung bài giảng bao gồm: Tổng quát về phát biểu class của C#, định nghĩa thuộc tính vật lý, định nghĩa tác vụ chức năng, định nghĩa toán tử chức năng, định nghĩa thuộc tính giao tiếp (luận lý), định nghĩa ₫ối tượng ₫ại diện hàm,. nội dung chi tiết. | Chương 3 Interface & Class trong C# Tổng quát về phát biểu class của C# Định nghĩa thuộc tính vật lý Định nghĩa tác vụ chức năng Định nghĩa toán tử chức năng Định nghĩa thuộc tính giao tiếp (luận lý) Định nghĩa ₫ối tượng ₫ại diện hàm (delegate) Định nghĩa sự kiện (Event) Định nghĩa phần tử quản lý danh sách (indexer) Thành phần static và thành phần không static Lệnh ₫ịnh nghĩa 1 class C# ₫iển hình Kết chương Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa © 2010 Môn : Các mẫu thiết kế hướng đối tượng Chương 3 : Interface & Class trong C# Slide 1 Tổng quát về phát biểu class của C# Ngôn ngữ C# (hay bất kỳ ngôn ngữ lập trình nào khác) cung cấp cho người lập trình nhiều phát biểu (statement) khác nhau, trong ₫ó phát biểu class ₫ể ₫ặc tả chi tiết hiện thực từng loại ₫ối tượng cấu thành phần mềm là phát biểu quan trọng nhất. Sau ₫ây là 1 template của 1 class C# : class MyClass : BaseClass, I1, I2, I3 { //₫ịnh nghĩa các thuộc tính vật lý của ₫ối tượng //₫ịnh nghĩa các tác vụ chức năng, các toán tử //₫ịnh nghĩa các thuộc tính giao tiếp (luận lý) //₫ịnh nghĩa các ₫ại diện hàm chức năng (delegate) //₫ịnh nghĩa các sự kiện (event) //₫ịnh nghĩa indexer của class //₫ịnh nghĩa các tác vụ quản lý ₫ời sống ₫ối tượng } Khoa Khoa học & Kỹ thuật Máy tính Trường ĐH Bách Khoa © 2010 Môn : Các mẫu thiết kế hướng đối tượng Chương 3 : Interface & Class trong C# Slide 2 Tổng quát về phát biểu class của C# Khi ₫ịnh nghĩa 1 class mới, ta có thể thừa kế tối ₫a 1 class ₫ã có (₫ơn thừa kế), tên class này nếu có, phải nằm ở vị trí ₫ầu tiên ngay sau dấu ngăn ":". Khi ₫ịnh nghĩa 1 class, ta có thể hiện thực nhiều interface khác nhau (₫a hiện thực), danh sách này nếu có, phải nằm sau tên class cha. Trong trường hợp nhiều interface có cùng 1 tác vụ (phân biệt bằng chữ ký) và nếu class muốn hiện thực chúng khác nhau thì ta dùng tên dạng phân cấp : class MyClass : BaseClass, I1, I2, I3 { //hiện thực các tác vụ cùng