... chuyển, xuất có giai đoạn biến đ i * Biệnpháp kĩ thuật - Biệnphápsửdụng câu h i + Kh i niệm câu h i: Câu h i dạng cấu trúc ngôn ngữ diễn đạt yêu cầu, đ i h i, mệnh đề cần gi i Câu h isửdụng vào ... đề nhận thức việc gi i nhiệm vụ nhận thức v i hướng dẫn ít, nhiều hướng dẫn GV + Tìm cách gi i v i cách gi i có sẵn Tìm cách gi i độc đáo nhiều cách gi i Tìm cách gi i nhạy bén phù hợp v ii u ... trạng dạy Sinhhọc 11 nhiều GV thực chất dừng l i dạy sinh lí TV sinh lí ĐV Từ thực tế chọn đề t iBiệnpháp hướng dẫnhọcsinhhọc chương I, IVSinhhọc 11 trung học phổ thông theo quan i m cấp...
... ứng dụng C i đặt timer cho CEmpWnd để thực đ i icon cho đ i tượng m_staticIcon theo th i gian v i icon n i Viết ứng dụng v i ProgressBar chạy theo th i gian Khi progressbar đầy kết thúc ứng dụng ... lntmail@yahoo.com void SetMargins ( // Lề tr i UINT nLeft, UINT nRight // lề ph i tính pixel ); Ấn đònh biên tr ibiên ph i hộp nhập DWORD GetMargins( ); Trả giá trò chứa thông tin biên tr i (WORD thấp) biên ... InsertString( int nIndex , LPCTSTR lpszString ); Như listbox void ResetContent( ); Như listbox virtual void DrawItem ( LPDRAWITEMSTRUCT lpDrawItemStruct ); Như listbox virtual void MeasureItem (...
... thành viên ,và g i phương thức thành viên kh i tạo tất biến thành viên Như ví dụ ta thiết lập thuộc tính truy cập hai biến thành viên xVal yVal public ph i kh i tạo giá trị hai biến thành viên bên ... Location, không giống v i lớp, cấu trúc tạo mà không cần ph i g i toán tử new i u giống biến kiểu liệu xây dựng sẵn (như int, long, char, ) tạo Ví dụ 7.2 sau minh họa việc tạo cấu trúc không sửdụng ... myFunc() hai giá trị gán cho x y, sau giá trị xuất hình: Loc1 location: 50, 100 Khi phương thức myFunc() trả cho hàm g i ( Main()) g i tiếp phương thức WriteLine() lần giá trị không thay đ i: Loc1...
... sau minh họa cách tạo cấu trúc Kiểu Location thể i m không gian hai chiều Lưu ý cấu trúc Location khai báo xác thực khai báo v i lớp, ngo i trừ việc sửdụng từ khóa struct Ngo i lưu ý hàm kh i ... (collections) Tập hợp xây dựng hướng t i kiểu liệu tham chiếu Trong chương tìm hiểu định nghĩa làm việc v i kiểu cấu trúc cách sửdụng kh idựngđể kh i tạo giá trị cấu trúc Định nghĩa cấu trúc Cú pháp ... xét rút nên sửdụng cấu trúc v i kiểu liệu nhỏ, hành vi hay thuộc tính giống kiểu liệu xây dựng sẵn Cấu trúc có hiệu sửdụng chúng mảng nhớ (Chương 9) Tuy nhiên, cấu trúc hiệu sửdụng dạng tập...
... thành viên lưu tử số mẫu số private int numerator; private int denominator; } public class Tester { static void Main() { Fraction f1 = new Fraction( 3, 4); Console.WriteLine("f1:{0}",f1.ToString()); ... có giá trị Việc thực giao l i cho phương thức kh idựng lấy tham số Toán tử chuyển đ i thứ hai thực cách tường minh, chuyển từ Fraction số nguyên: public static explicit operator int( Fraction ... 3/4 In Fraction Constructor(int, int) f2: 2/4 Do phương phức kh idựng lớp Fraction có g i hàm WriteLine() đểxuất thông tin kh idựng nên tạo đ i tượng (new) thông tin hịển thị Dòng hàm Main()...
... long Tuy nhiên, i u ngược l i, tức chuyển từ kiểu long sang kiểu int ph i thực cách tường minh (sử dụng ép kiểu) ta thông tin giá trị biến kiểu long vượt kích thước int lưu nhớ: int myInt = 5; ... cách thể thông thường đểsửdụng toán tử Hạn chế việc sửdụng tùy tiện nạp chồng toán tử cách sửdụng cách đặc trưng Ví dụ, hấp dẫn việc sửdụng nạp chồng toán tử gia tăng (++) lớp Employee để ... sang kiểu long cách ngầm định, cho phép chuyển từ kiểu long sang kiểu int cách tường minh Việc chuyển từ kiểu int sang kiểu long thực ngầm định hiển nhiên giá trị int thích hợp v i kích thước kiểu...
... hàm Main() để tạo mảng đ i tượng Xe, đưa đ i tượng cụ thể vào mảng đ i tượng Xe, sau cho lặp đ i tượng mảng để tự gi i thiệu tên (bằng cách g i hàm Who() đ i tượng) B i tập 3: Xây dựng lớp đ i tượng ... FractionArtist public, phạm vị lớp nằm bên lớp Fraction Câu h i trả l i Câu h i 1: Có cần thiết ph i định từ khóa override phương thức phủ lớp dẫnxuất hay không? Trả l i 1: Có, ph i khai báo ... Console.WriteLine(“Meo meo! Toi la {0} can nang {1}”, name, weight); } // biến private lớp private int weight; } public class Tester 151 Kế Thừa – Đa Hình Ngôn Ngữ Lập Trình C# { static void Main()...
... g i phương thức ToString( ) kiểu liệu int ví dụ 5.4 Boxing thực ngầm định Boxing chuyển đ i ngầm định kiểu liệu giá trị sang kiểu liệu tham chiếu đ i tượng Boxing giá trị cách tạo thể hiển đ i ... cho phép kiểu liệu giá trị (như int, long, ) đ i xử kiểu liệu tham chiếu (các đ i tượng) Một giá trị đưa vào bên đ i tượng, g i Boxing Trường hợp ngược l i, Unboxing chuyển từ đ i tượng giá trị ... Boxing số nguyên Boxing thực ngầm định đặt kiểu giá trị vào tham chiếu chờ đ i giá trị đưa vào đ i tượng cách tự động ngầm định Ví dụ, gán kiểu dư liệu kiểu nguyên int vào biến kiểu Object ( i u...
... override void DrawWindow( ) { Console.WriteLine(“Writing string to the listbox: {0}”, listBoxContents); } // biến private lớp private string listBoxContents; } // lớp Button dẫnxuất từ lớp Window ... C# kiểu liệu dẫnxuất từ lớp System.Object Thú vị bao gồm kiểu liệu giá trị Một lớp sở cha trực tiếp lớp dẫnxuất Lớp dẫnxuất làm sở cho lớp dẫnxuất xa nữa, việc dẫnxuất tạo thừa kế hay kiến ... M i lớp lớp Window nên thực thi phương thức DrawWindow() cho riêng Tuy nhiên i u không thực đ i h i ph i thực cách bắt buộc Để yêu cầu lớp (lớp dẫn xuất) ph i thực thi phương thức lớp sở, phải...
... Trình C# public override void DrawWindow() { base.DrawWindow(); Console.WriteLine(“ Writing string to the listbox: {0}”, listBoxContents); } // biến thành viên ListBox private string listBoxContents; ... DrawWindow(): override public override void DrawWindow() { base.DrawWindow(); Console.WriteLine(“Writing string to the listbox: {0}”, listBoxContents); } Từ khóa override bảo v i trình biên dịch ... Writing string to the listbox: Stand alone list box Drawing a button at 5: Window: drawing Window at 1: Window: drawing window at 3: Writing string to the listbox: List box is array Drawing a button...
... } // Có hai biến thành viên private // hai biến không thấy bên lớp // dẫnxuất private int top; private int left; } // ListBox dẫnxuất từ Window public class ListBox: Window { // Kh idựng có ... đầu v i việc khai báo lớp sở tên Window Lớp thực thi phương thức kh idựng phương thức đơn giản DrawWindow Lớp có hai biến thành viên private top left, hai biến khai báo private nên sửdụng bên ... đ i hành vi thực // bên phương thức public new void DrawWindow() { base.DrawWindow(); Console.WriteLine(“ ListBox write: {0}”, mListBoxContents); } // biến thành viên private private string mListBoxContents;...
... sâu vào m i quan hệ đ i tượng gi i thực cách mô hình hóa quan hệ xây dựng chương trình Chương gi i thiệu kh i niệm đặc biệt hóa (specialization) c i đặt ngôn ngữ C# thông qua kế thừa (inheritance) ... Câu h i 6: Chương trình sau có l i Hãy sửa l i cho biết lệnh phát sinh l i? Class Tester { public static void Main() { Display(); } public static void Display() ... Boxing Unboxing liệu Boxing thực ngầm định Unboxing ph i thực tường minh Các lớp lồng Câu h i & tập Trong chương trước trình bày cách tạo kiểu liệu việc xây dựng lớp đ i tượng Tiếp theo...
... thành viên ,và g i phương thức thành viên kh i tạo tất biến thành viên Như ví dụ ta thiết lập thuộc tính truy cập hai biến thành viên xVal yVal public ph i kh i tạo giá trị hai biến thành viên bên ... Location, không giống v i lớp, cấu trúc tạo mà không cần ph i g i toán tử new i u giống biến kiểu liệu xây dựng sẵn (như int, long, char, ) tạo Ví dụ 7.2 sau minh họa việc tạo cấu trúc không sửdụng ... myFunc() hai giá trị gán cho x y, sau giá trị xuất hình: Loc1 location: 50, 100 Khi phương thức myFunc() trả cho hàm g i ( Main()) g i tiếp phương thức WriteLine() lần giá trị không thay đ i: Loc1...
... sau minh họa cách tạo cấu trúc Kiểu Location thể i m không gian hai chiều Lưu ý cấu trúc Location khai báo xác thực khai báo v i lớp, ngo i trừ việc sửdụng từ khóa struct Ngo i lưu ý hàm kh i ... (collections) Tập hợp xây dựng hướng t i kiểu liệu tham chiếu Trong chương tìm hiểu định nghĩa làm việc v i kiểu cấu trúc cách sửdụng kh idựngđể kh i tạo giá trị cấu trúc Định nghĩa cấu trúc Cú pháp ... xét rút nên sửdụng cấu trúc v i kiểu liệu nhỏ, hành vi hay thuộc tính giống kiểu liệu xây dựng sẵn Cấu trúc có hiệu sửdụng chúng mảng nhớ (Chương 9) Tuy nhiên, cấu trúc hiệu sửdụng dạng tập...
... thành viên lưu tử số mẫu số private int numerator; private int denominator; } public class Tester { static void Main() { Fraction f1 = new Fraction( 3, 4); Console.WriteLine("f1:{0}",f1.ToString()); ... có giá trị Việc thực giao l i cho phương thức kh idựng lấy tham số Toán tử chuyển đ i thứ hai thực cách tường minh, chuyển từ Fraction số nguyên: public static explicit operator int( Fraction ... 3/4 In Fraction Constructor(int, int) f2: 2/4 Do phương phức kh idựng lớp Fraction có g i hàm WriteLine() đểxuất thông tin kh idựng nên tạo đ i tượng (new) thông tin hịển thị Dòng hàm Main()...
... long Tuy nhiên, i u ngược l i, tức chuyển từ kiểu long sang kiểu int ph i thực cách tường minh (sử dụng ép kiểu) ta thông tin giá trị biến kiểu long vượt kích thước int lưu nhớ: int myInt = 5; ... cách thể thông thường đểsửdụng toán tử Hạn chế việc sửdụng tùy tiện nạp chồng toán tử cách sửdụng cách đặc trưng Ví dụ, hấp dẫn việc sửdụng nạp chồng toán tử gia tăng (++) lớp Employee để ... sang kiểu long cách ngầm định, cho phép chuyển từ kiểu long sang kiểu int cách tường minh Việc chuyển từ kiểu int sang kiểu long thực ngầm định hiển nhiên giá trị int thích hợp v i kích thước kiểu...
... hàm Main() để tạo mảng đ i tượng Xe, đưa đ i tượng cụ thể vào mảng đ i tượng Xe, sau cho lặp đ i tượng mảng để tự gi i thiệu tên (bằng cách g i hàm Who() đ i tượng) B i tập 3: Xây dựng lớp đ i tượng ... FractionArtist public, phạm vị lớp nằm bên lớp Fraction Câu h i trả l i Câu h i 1: Có cần thiết ph i định từ khóa override phương thức phủ lớp dẫnxuất hay không? Trả l i 1: Có, ph i khai báo ... Console.WriteLine(“Meo meo! Toi la {0} can nang {1}”, name, weight); } // biến private lớp private int weight; } public class Tester 151 Kế Thừa – Đa Hình Ngôn Ngữ Lập Trình C# { static void Main()...
... g i phương thức ToString( ) kiểu liệu int ví dụ 5.4 Boxing thực ngầm định Boxing chuyển đ i ngầm định kiểu liệu giá trị sang kiểu liệu tham chiếu đ i tượng Boxing giá trị cách tạo thể hiển đ i ... cho phép kiểu liệu giá trị (như int, long, ) đ i xử kiểu liệu tham chiếu (các đ i tượng) Một giá trị đưa vào bên đ i tượng, g i Boxing Trường hợp ngược l i, Unboxing chuyển từ đ i tượng giá trị ... Boxing số nguyên Boxing thực ngầm định đặt kiểu giá trị vào tham chiếu chờ đ i giá trị đưa vào đ i tượng cách tự động ngầm định Ví dụ, gán kiểu dư liệu kiểu nguyên int vào biến kiểu Object ( i u...
... override void DrawWindow( ) { Console.WriteLine(“Writing string to the listbox: {0}”, listBoxContents); } // biến private lớp private string listBoxContents; } // lớp Button dẫnxuất từ lớp Window ... C# kiểu liệu dẫnxuất từ lớp System.Object Thú vị bao gồm kiểu liệu giá trị Một lớp sở cha trực tiếp lớp dẫnxuất Lớp dẫnxuất làm sở cho lớp dẫnxuất xa nữa, việc dẫnxuất tạo thừa kế hay kiến ... M i lớp lớp Window nên thực thi phương thức DrawWindow() cho riêng Tuy nhiên i u không thực đ i h i ph i thực cách bắt buộc Để yêu cầu lớp (lớp dẫn xuất) ph i thực thi phương thức lớp sở, phải...
... thi việc phủ phương thức ỏ lớp dẫnxuất Khi ta g i phương thức DrawWindow mảng, trình biên dịch dò xác kiểu liệu thực thi mảng có ba kiểu thực thi Window, ListBox, Button Và trình biên dịch g i ... base.DrawWindow(); Console.WriteLine(“ Writing string to the listbox: {0}”, listBoxContents); } // biến thành viên ListBox private string listBoxContents; } public class Button : Window { public Button( ... using System; public class Window { public Window( int top, int left ) { this.top = top; this.left = left; } // phương thức khai báo ảo public virtual void DrawWindow() { Console.WriteLine( “Window:...