Danh mục

Bài giảng Lập trình hướng đối tượng: Chương 11 - Trường Đại học Ngoại ngữ - Tin học, TP.HCM

Số trang: 20      Loại file: pdf      Dung lượng: 1.07 MB      Lượt xem: 10      Lượt tải: 0    
tailieu_vip

Phí tải xuống: 1,000 VND Tải xuống file đầy đủ (20 trang) 0
Xem trước 2 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: Chương 11 Indexer, cung cấp cho người đọc những kiến thức như: Đặt vấn đề; Indexer; Cách dùng khác của Indexer; Ý nghĩa của indexer;...Mời các bạn cùng 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: Chương 11 - Trường Đại học Ngoại ngữ - Tin học, TP.HCM CHƯƠNG 11: Click to edit Master subtitle style INDEXERS Khoa Công nghệ thông tin Trường Đại học Ngoại ngữ - Tin học, TP.HCM 1 NỘI DUNG Đặt vấn đề Indexer Cách dùng khác của Indexer Ý nghĩa của indexer Tóm tắt 2 ĐẶT VẤN ĐỀ Đặt vấn đề Để truy xuất một đối tượng thuộc 1 class, ta dùng biến đối tượng. Thông qua biến đối tượng, ta truy xuất từng thành phần (thuộc tính). Cú pháp: Tên biến đối tượng.tên thành phần Ví dụ: Book b = new Book (); string tenSach = b.TenSach; 4 Đặt vấn đề Nhưng, đôi khi ta muốn truy xuất một tập hợp (collection) nằm trong 1 class ? Ví dụ: tạo 1 class quản lý sách (lớp Book) bao gồm: mã sách, tên sách, các chương của sách; biết 1 cuốn sách có nhiều chương. Ta muốn truy xuất tập hợp các chương của 1 lớp Book? 5 Đặt vấn đề class Book { public string MaSach { get; set; } Tạo mảng kiểu public string TenSach { get; set; } string chứa tên các string[] chuong; chương của sách get public string GetChapter(int i) { return chuong[i]; } set public void SetChapter(int i, string str) { chuong[i] = str; } Phương thức public Book(int soChuong) khởi tạo { chuong = new string[soChuong]; } } 6 Đặt vấn đề Book book = new Book(10); book.MaSach = '01_TH'; book.TenSach = 'Lap Trinh Huong Doi Tuong'; book.SetChapter(0, 'Gioi Thieu'); book.SetChapter(1, 'Lop va Doi Tuong'); Lấy nội dung chương ... 1 của lớp Book string noiDung = book.GetChapter(1); Có thể viết lại ???? INDEXER Book book = new Book(10); book.MaSach = '01_TH'; book.TenSach = 'Lap Trinh Huong Doi Tuong'; Sử dụng indexer để book[0]= 'Gioi Thieu'; ghi (write) book[1]= 'Lop va Doi Tuong'; ... Console.WriteLine(“In cac chuong cua sach”); Sử dụng indexer để for(int i=0;iINDEXER Indexer Indexer là chức năng được C# hỗ trợ để người dùng có thể truy xuất những tập hợp (collection như: mảng, danh sách,…) nằm trong lòng 1 lớp. Indexer chính là cách overload phép toán chỉ mục ([ và ]) 9 Indexer Cú pháp: [scope] [attribute] type this [int index] {[getdef] [setdef]}; Ví dụ class Book { ... string[] chuong; public string this [int index] { . . .} } scope type: loại từ khoá: this tham số get, set dữ liệu accessors được đánh chỉ mục 10 Indexer Ví dụ class Book { public string MaSach { get; set; } public string TenSach { get; set; } string[] chuong; public string this[int index] { get { read return chuong[index]; } Cách sử dụng set { write chuong[i] = value; } } Book book = new Book(10); public Book(int soChuong) book.MaSach = '01_TH'; { book.TenSach = 'Lap Trinh Huong Doi Tuong'; chuong = new string[soChuong]; book[0]= 'Gioi Thieu'; } book[1]= 'Lop va Doi Tuong'; } ... Console.WriteLine(“In cac chuong cua sach”); for(int i=0;iIndexer Các thành phần của indexer Bắt đầu là public (không phải public và static) Kiểu của giá trị trả về Từ khóa this[ ] chỉ index Trong [] là danh sách chỉ mục Giống properties: có get và set Không cần phải có cả hai. Trong get/set dùng biến index Trong set dùng biến value để lấy giá trị được gán 12 CÁCH DÙNG KHÁC CỦA INDEXER Cách dùng khác của Indexer class Chuong { private string tenChuong; private string noiDung; public string TenChuong { get{return tenChuong;} set{tenChuong= value;} } public string NoiDung { get { return noiDung; } set { noiDung = value; } } public Chuong(string ten, string noiDungChuong) { tenChuong = ten; noiDung = noiDungChuong; } } 14 Cách dùng khác của Indexer class Sach { public string TenSach { get; set; } private Chuong[] dsChuong; public Sach(int soChuong) { dsChuong = new Chuong[soChuong]; } public Chuong this[int index] { Cách sử dụng get { return dsChuong[index]; } set { dsCh ...

Tài liệu được xem nhiều:

Gợi ý tài liệu liên quan: