Danh mục

Tìm hiểu C# và ứng dụng của C# p 5

Số trang: 7      Loại file: pdf      Dung lượng: 462.94 KB      Lượt xem: 17      Lượt tải: 0    
Thư viện của tui

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Chương 4 Lớp và đối tượngĐối tượng là một trị có thể được tạo ra, lưu giữ và sử dụng. Trong C# tất cả các biến đều là đối tượng. Các biến kiểu số, kiểu chuỗi … đều là đối tượng. Mỗi một đối tượng đều có các biến thành viên để lưu giữ dữ liệu và có các phương thức (hàm) để tác động lên biến thành viên. Mỗi đối tượng thuộc về một lớp đối tương nào đó. Các đối tượng có cùng lớp thì có cùng các biến thành viên và phương thức.4.1 Định nghĩa lớpĐịnh nghĩa...
Nội dung trích xuất từ tài liệu:
Tìm hiểu C# và ứng dụng của C# p 5Lớp và đối tượng Gvhd: Nguyễn Tấn Trần Minh KhangChương 4 Lớp và đối tượngĐối tượng là một trị có thể được tạo ra, lưu giữ và sử dụng. Trong C# tất cả các biếnđều là đối tượng. Các biến kiểu số, kiểu chuỗi … đều là đối tượng. Mỗi một đốitượng đều có các biến thành viên để lưu giữ dữ liệu và có các phương thức (hàm) đểtác động lên biến thành viên. Mỗi đối tượng thuộc về một lớp đối tương nào đó. Cácđối tượng có cùng lớp thì có cùng các biến thành viên và phương thức.4.1 Định nghĩa lớpĐịnh nghĩa một lớp mới với cú pháp như sau: [attribute][bổ từ truy xuất] class định danh [:lớp cơ sở] { thân lớp }Ví dụ 4-1 Khai báo một lớp public class Tester { public static int Main( ) { ... } }Khi khai báo một lớp ta định nghĩa các đặc tính chung của tất cả các đối tượng củalớp và các hành vi của chúng.Ví dụ 4-2 Khai báo, tạo và sử dựng một lớp using System; public class Time { // phương thức public public void DisplayCurrentTime( ) { Console.WriteLine( stub for DisplayCurrentTime ); } // các biến private int Year; int Month; int Date; int Hour; int Minute; int Second; } public class Tester { static void Main( ) { Time t = new Time( ); t.DisplayCurrentTime( ); } 24Lớp và đối tượng Gvhd: Nguyễn Tấn Trần Minh Khang }4.1.1 Bổ từ truy xuấtBổ từ truy xuất xác định thành viên (nói tắt của biến thành viên và phương thứcthành viên) nào của lớp được truy xuất từ lớp khác. Có các loại kiểu truy xuất sau:Bảng 4-1 Các bổ từ truy xuất Từ khóa Giải thích public Truy xuất mọi nơi protected Truy xuất trong nội bộ lớp hoặc trong các lớp con internal Truy xuất nội trong chương trình (assembly) protected internal Truy xuất nội trong chương trình (assembly) và trong các lớp con private (mặc định) Chỉ được truy xuất trong nội bộ lớp4.1.2 Các tham số của phương thứcMỗi phương thức có thể không có tham số mà cũng có thể có nhiều tham số. Cáctham số theo sau tên phương thức và đặt trong cặp ngoặc đơn. Ví dụ như phươngthức SomeMethod sau:Ví dụ 4-3 Các tham số và cách dùng chúng trong phương thức using System; public class MyClass { public void SomeMethod(int firstParam, float secondParam) { Console.WriteLine(Here are the parameters received: {0}, {1}, firstParam, secondParam); } } public class Tester { static void Main( ) { int howManyPeople = 5; float pi = 3.14f; MyClass mc = new MyClass( ); mc.SomeMethod(howManyPeople, pi); } }4.2 Tạo đối tượngTạo một đối tượng bẳng cách khai báo kiểu và sau đó dùng từ khoá new để tạo nhưtrong Java và C++. 25Lớp và đối tượng Gvhd: Nguyễn Tấn Trần Minh Khang4.2.1 Hàm dựng - ConstructorHàm dựng là phương thức đầu tiên được triệu gọi và chỉ gọi một lần khi khởi tạođối tượng, nó nhằm thiết lập các tham số đầu tiên cho đối tượng. Tên hàm dựngtrùng tên lớp; còn các mặt khác như phương thức bình thường.Nếu lớp không định nghĩa hàm dựng, trình biên dịch tự động tạo một hàm dựngmặc định. Khi đó các biến thành viên sẽ được khởi tạo theo các giá trị mặc định:Bảng 4-2 Kiểu cơ sở và giá trị mặc định Kiểu Giá trị mặc định số (int, long, …) 0 bool false char ‘’ (null) enum 0 Tham chiếu nullVí dụ 4-4 Cách tạo hàm dựng public class Time { // public accessor methods public void DisplayCurrentTime( ) { System.Console.WriteLine({0}/{1}/{2} {3}:{4}:{5}, Month, Date, Year, Hour, Minute, Second); } // constructor public Time(System.DateTime dt) { Year = dt.Year; Month = dt.Month; Date = dt.Day; Hour = dt.Hour; Minute = dt.Minute; Second = dt.Second; } // private member variables int Year; int Month; int Date; int Hour; int Minute; int Second; } public class Tester { static void Main( ) { System.DateTime currentTime = System.DateTime.Now; Time t = new Time(currentTime); t.DisplayCurrentTime( ); 26Lớp và đối tượng Gvhd: Nguyễn Tấn Trần Minh Khang } } Kết quả: 11/16/2000 16:21:404.2.2 Khởi tạoTa có thể khởi tạo giá tri các biến thành viên theo ý muốn bằng cách khởi tạo nótrong constructor của lớp hay có thể gán vào trực tiếp lúc khai báo. Với giá trị khởitạo này ...

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