Bài giảng Lập trình hướng đối tượng 1: Chương 5 - ThS. Thái Kim Phụng
Số trang: 22
Loại file: ppt
Dung lượng: 341.50 KB
Lượt xem: 10
Lượt tải: 0
Xem trước 3 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Lập trình hướng đối tượng 1: Chương 5 Uỷ nhiệm hàm, sự kiện và xử lý ngoại lệ do ThS. Thái Kim Phụng biên soạn cung cấp cho người học các kiến thức: Uỷ nhiệm hàm (delegate), sự kiện (event), xử lý ngoại lệ. Đây là tài liệu học tập và giảng dạy dành cho sinh viên ngành tham khảo.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình hướng đối tượng 1: Chương 5 - ThS. Thái Kim Phụng TrườngĐHKinhTếTp.HCM KhoaTinHọcQuảnLýLẬPTRÌNHHƯỚNGĐỐITƯỢNG1 CHƯƠNG 5: UỶ NHIỆM HÀM, SỰ KIỆN VÀ XỬ LÝ NGOẠI LỆ Nội dung1.1. Uỷ Uỷnhiệm nhiệmhàm hàm(delegate) (delegate)2.2.Sự Sựkiện kiện(event) (event)3.3. Xử Xửlý lýngoại ngoạilệ lệ 1. Uỷ nhiệm hàm Uỷ nhiệm hàm(delegate) là một đối tượng cho phép chúng ta thực hiện gọi phương thức vào thời điểm mà chương trình đang thực hiện (runtime). Uỷ nhiệm hàm không làm việc riêng lẻ mà giao cho phương thức làm công việc của nó. Để thực hiện khai báo một uỷ nhiệm ta sử dụng từ khóa delegate. Một uỷ nhiệm hàm là một đối tượng tham chiếu đến một phương thức, chính vì vậy khi khai báo uỷ nhiệm hàm ta thực hiện khai báo khuôn dạng của phương thức mà uỷ nhiệm hàm tham chiếu đến. 1. Uỷ nhiệm hàm Cú pháp khai báo 1 uỷ nhiệm hàm: [bổ [bổ từ từ truy truy cập] cập] delegate delegate (danh sách sách các các tham tham số); số); Ví dụ: khai báo một uỷ nhiệm hàm cho phép tham chiếu đến tất cả các hàm có 2 tham số nguyên và trả về một số nguyên. public delegate int PhepTinh(int a, int b); 1. Uỷ nhiệm hàmclass Calculator { public double Sum(int value1, int value2, int value3) { return value1 + value2 + value3; } Khai báo uỷ nhiệm }class Program { public delegate double Calculation(int x, int y, int z); static void Main(string[ ] args) Tạo đối tượng uỷ nhiệm Gọi uỷ nhiệm { Calculator c = new Calculator(); Calculation cal = new Calculation(c.Sum); System.Console.WriteLine(Tong cua 3 so la: + cal(1,3,4) ); }} 2. Sự kiện (Event) Sự kiện: là một tín hiệu được thông báo giữa các đối tượng. Sự kiện xảy ra khi có sự tương tác giữa các đối tượng trong hệ thống. Sự kiện là các kích thích xảy ra bên trong hoặc bên ngoài hệ thống. 2. Sự kiện (Event) Các bước tạo và sử dụng sự kiện trong C#: Tạo một uỷ nhiệm hàm để cho phép tham chiếu đến các phương thức mà thực hiện tương tác lại các sự kiện (đáp ứng khi các sự kiện xảy ra). Khai báo sự kiện với cú pháp sau: [bổ từ truy cập] event ; Đăng ký sự kiện bằng cú pháp “+=” 2. Sự kiện (Event)public delegate void BatCongTac(bool state);public class CongTac Khai báo delagate { BatCongTac public event BatCongTac OnBatCongTac; public bool state; Khai báo sự kiện public void KhiBatCongTac() OnBatCongTac { OnBatCongTac(state); state = state ? false: true; }} 2. Sự kiện (Event)public class Program { Đăng ký sự kiện static void Main(string[] args) { CongTac c = new CongTac(); BongDen b = new BongDen(); c.OnBatCongTac += new BatCongTac(b.TrangThaiDen); c.KhiBatCongTac(); c.KhiBatCongTac(); Phương thức } xử lý} 2. Sự kiện (Event)public class BongDen{ public void TrangThaiDen(bool state) { if (state) Console.WriteLine(Den sang); else Console.WriteLine(Den tat); } } 3. Xử lý ngoại lệ Ngoại lệ (Exception): là bất kì sự bất thường nào xảy ra không mong muốn trong ứng dụng. Một ứng dụng tốt thì cần phải giải quyết được tất cả các ngoại lệ có thể xảy ra. Các kiểu ngoại lệ: có 2 kiểu ngoại lệ Các ngoại lệ ở mức hệ thống: các ngoại lệ này là những ngoại lệ được ném ra (thrown) bởi hệ thống và thường là các nguyên nhân do hệ thống gây ra như thiếu bộ nhớ, kết nối mạng bị ngắt, phần cứng bị lỗi,…. Các ngoại lệ mức ứng dụng: là các ngoại lệ được ném ra bởi người viết ứng dụng 3. Xử lý ngoại lệ Tất cả các ngoại lệ trong C# đều trực tiếp hoặc gián tiếp kế thừa từ lớp Exception, trong namespace System Lớp Exception có các thuộc tính sau: Message: Lưu trữ thông điệp chỉ ra nguyên nhân của ngoại lệ. Source: chỉ ra tên của ứng dụng hoặc tên của đối tượng gây ra ngoại lệ. StackTrace: cung cấp thông tin chi tiết về ngoại lệ trên Stack vào thời điểm mà nó được quẳng ra. InnerException: t ...
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình hướng đối tượng 1: Chương 5 - ThS. Thái Kim Phụng TrườngĐHKinhTếTp.HCM KhoaTinHọcQuảnLýLẬPTRÌNHHƯỚNGĐỐITƯỢNG1 CHƯƠNG 5: UỶ NHIỆM HÀM, SỰ KIỆN VÀ XỬ LÝ NGOẠI LỆ Nội dung1.1. Uỷ Uỷnhiệm nhiệmhàm hàm(delegate) (delegate)2.2.Sự Sựkiện kiện(event) (event)3.3. Xử Xửlý lýngoại ngoạilệ lệ 1. Uỷ nhiệm hàm Uỷ nhiệm hàm(delegate) là một đối tượng cho phép chúng ta thực hiện gọi phương thức vào thời điểm mà chương trình đang thực hiện (runtime). Uỷ nhiệm hàm không làm việc riêng lẻ mà giao cho phương thức làm công việc của nó. Để thực hiện khai báo một uỷ nhiệm ta sử dụng từ khóa delegate. Một uỷ nhiệm hàm là một đối tượng tham chiếu đến một phương thức, chính vì vậy khi khai báo uỷ nhiệm hàm ta thực hiện khai báo khuôn dạng của phương thức mà uỷ nhiệm hàm tham chiếu đến. 1. Uỷ nhiệm hàm Cú pháp khai báo 1 uỷ nhiệm hàm: [bổ [bổ từ từ truy truy cập] cập] delegate delegate (danh sách sách các các tham tham số); số); Ví dụ: khai báo một uỷ nhiệm hàm cho phép tham chiếu đến tất cả các hàm có 2 tham số nguyên và trả về một số nguyên. public delegate int PhepTinh(int a, int b); 1. Uỷ nhiệm hàmclass Calculator { public double Sum(int value1, int value2, int value3) { return value1 + value2 + value3; } Khai báo uỷ nhiệm }class Program { public delegate double Calculation(int x, int y, int z); static void Main(string[ ] args) Tạo đối tượng uỷ nhiệm Gọi uỷ nhiệm { Calculator c = new Calculator(); Calculation cal = new Calculation(c.Sum); System.Console.WriteLine(Tong cua 3 so la: + cal(1,3,4) ); }} 2. Sự kiện (Event) Sự kiện: là một tín hiệu được thông báo giữa các đối tượng. Sự kiện xảy ra khi có sự tương tác giữa các đối tượng trong hệ thống. Sự kiện là các kích thích xảy ra bên trong hoặc bên ngoài hệ thống. 2. Sự kiện (Event) Các bước tạo và sử dụng sự kiện trong C#: Tạo một uỷ nhiệm hàm để cho phép tham chiếu đến các phương thức mà thực hiện tương tác lại các sự kiện (đáp ứng khi các sự kiện xảy ra). Khai báo sự kiện với cú pháp sau: [bổ từ truy cập] event ; Đăng ký sự kiện bằng cú pháp “+=” 2. Sự kiện (Event)public delegate void BatCongTac(bool state);public class CongTac Khai báo delagate { BatCongTac public event BatCongTac OnBatCongTac; public bool state; Khai báo sự kiện public void KhiBatCongTac() OnBatCongTac { OnBatCongTac(state); state = state ? false: true; }} 2. Sự kiện (Event)public class Program { Đăng ký sự kiện static void Main(string[] args) { CongTac c = new CongTac(); BongDen b = new BongDen(); c.OnBatCongTac += new BatCongTac(b.TrangThaiDen); c.KhiBatCongTac(); c.KhiBatCongTac(); Phương thức } xử lý} 2. Sự kiện (Event)public class BongDen{ public void TrangThaiDen(bool state) { if (state) Console.WriteLine(Den sang); else Console.WriteLine(Den tat); } } 3. Xử lý ngoại lệ Ngoại lệ (Exception): là bất kì sự bất thường nào xảy ra không mong muốn trong ứng dụng. Một ứng dụng tốt thì cần phải giải quyết được tất cả các ngoại lệ có thể xảy ra. Các kiểu ngoại lệ: có 2 kiểu ngoại lệ Các ngoại lệ ở mức hệ thống: các ngoại lệ này là những ngoại lệ được ném ra (thrown) bởi hệ thống và thường là các nguyên nhân do hệ thống gây ra như thiếu bộ nhớ, kết nối mạng bị ngắt, phần cứng bị lỗi,…. Các ngoại lệ mức ứng dụng: là các ngoại lệ được ném ra bởi người viết ứng dụng 3. Xử lý ngoại lệ Tất cả các ngoại lệ trong C# đều trực tiếp hoặc gián tiếp kế thừa từ lớp Exception, trong namespace System Lớp Exception có các thuộc tính sau: Message: Lưu trữ thông điệp chỉ ra nguyên nhân của ngoại lệ. Source: chỉ ra tên của ứng dụng hoặc tên của đối tượng gây ra ngoại lệ. StackTrace: cung cấp thông tin chi tiết về ngoại lệ trên Stack vào thời điểm mà nó được quẳng ra. InnerException: t ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Lập trình hướng đối tượng Lập trình hướng đối tượng Bài giảng Lập trình hướng đối tượng 1 Lập trình hướng đối tượng 1 Uỷ nhiệm hàm Sự kiện và xử lý ngoại lệGợi ý tài liệu liên quan:
-
Giáo trình Lập trình hướng đối tượng: Phần 2
154 trang 271 0 0 -
101 trang 199 1 0
-
14 trang 133 0 0
-
Giáo trình lập trình hướng đối tượng - Lê Thị Mỹ Hạnh ĐH Đà Nẵng
165 trang 112 0 0 -
Giáo trình Lập trình Windows 1 - Trường CĐN Đà Lạt
117 trang 96 0 0 -
Giáo trình Phân tích, thiết kế hướng đối tượng với UML: Phần 1 - Trường ĐH Công nghiệp Quảng Ninh
111 trang 95 0 0 -
265 trang 78 0 0
-
Giáo trình Lập trình hướng đối tượng với Java: Phần 2 - Trần Thị Minh Châu, Nguyễn Việt Hà
141 trang 75 0 0 -
33 trang 68 0 0
-
Ngôn ngữ lập trình C# 2005 - Tập 3: Lập trình hướng đối tượng (Phần 1)
196 trang 51 0 0