Bài giảng C# và môi trường Donet - Bài 5: Lớp và phương thức
lượt xem 5
download
Bài giảng C# và môi trường Donet - Bài 5 "Lớp và phương thức" gồm có những nội dung trình bày sau: Các đặc điểm của lập trình hướng đối tượng, khái niệm lớp và cách khai báo lớp (class), khái niệm đối tượng và cách khởi tạo đối tượng (object), constructor (hàm tạo), constructor mặc định, static constructor, con trỏ this.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng C# và môi trường Donet - Bài 5: Lớp và phương thức
- Bài 5 Lớp và phương thức
- Ôn tập lại bài cũ • Mảng • Câu lệnh foreach • Lớp Random • Kí tự • Chuỗi kí tự
- Lớp và phương thức Nội dung trình bày • Các đặc điểm của lập trình hướng đối tượng • Khái niệm lớp và cách khai báo lớp(class) • Khái niệm đối tượng và cách khởi tạo đối tượng(object) • Constructor(hàm tạo) • Constructor mặc định • Static constructor • Con trỏ this Subject name / Session# / 3 of Totalpage
- Lớp và phương thức Nội dung trình bày • Deconstructor(hàm hủy) • Garbage Collector • Phương thức(method) • Static member và not static member • Method Overloading(chồng phương thức) • Chồng toán tử (Operator Overloading) • Access modifier(phạm vi truy cập) • Từ khóa ref và out
- Lớp và phương thức Các đặc điểm của lập trình hướng đối tượng • Trừu tượng hóa dữ liệu(Data Abstraction) • Bao gói dữ liệu(Encapsulation) • Kế thừa(Inheritance) • Đa hình(Polymorphism)
- Lớp và phương thức Khái niệm lớp • Lớp là khái niệm để chỉ một lớp các đối tượng có cùng đặc điểm, thuộc tính • Mỗi lớp các đối tượng gồm có các thuộc tính(characteristics còn gọi là state ) và các hành vi(behavior, còn gọi là action). Student Car -ID -Make -Name -Address -Model +Studying() +Driving() +TakeExam() +Accelerating() +Relax() +Braking()
- Lớp và phương thức Cách khai báo một lớp trong C# • Thông thường một lớp gồm có: Các field Các constructor(hàm tạo) Các phương thức • Cú pháp để khai báo một lớp: class { //class member } • Ví dụ DEMO khai báo lớp
- Lớp và phương thức Khái niệm đối tượng (object) • Là một thực thể tồn tại trong thực tế • Là một thể hiện của lớp (Instance of class) • Cú pháp để tạo một đối tượng của một lớp(Instantiating Objects) • = new (); Cấp phát vùng nhớ Khởi tạo đối tượng • So sánh lớp(class) và đối tượng(object) Lớp định nghĩa ra mô hình, nó đưa ra các thuộc tính và các hành động mà một đối tượng của lớp đó phải có Còn đối tượng là một thực thể thật trong thực tế • Ví dụ DEMO về khởi tạo đối tượng của lớp
- Lớp và phương thức Constructor • Là phương thức đặt biệt dùng để khởi tạo đối tượng của một lớp • Đặc điểm: Trùng với tên của lớp Không trả về kiểu dữ liệu Có đối số hoặc không có đối số Nếu không viết constructor, trình biên dịch cung cấp một constructor mặc định trình sẽ dùng constructor mặc định • Ví dụ DEMO về Constructor
- Lớp và phương thức Default constructor(Constructor mặc định) • Nếu không viết constructor cho lớp thì trình biên dịch sẽ cung cấp một constructor mặc định, constructor mặc định có các đặc điểm: Phạm vi truy xuất là public Trùng tên của lớp Không có đối số Không có kiểu dữ liệu trả về Khởi tạo các thuộc tính(field) của lớp bằng 0,false hoặc null • Ví dụ DEMO default constructor
- Lớp và phương thức Static constructor • Được tự động thực thi để khởi tạo các class variable(các biến tĩnh) • Static constructor được thực thi trước khi bất kỳ một đối tượng nào của lớp được khởi tạo • Static constructor được thực thi trước khi một static variable hay static method nào của lớp được gọi • Static constructor chỉ được gọi một lần duy nhất • Static constructor không chứa bất kỳ tham số nào • Không sử dụng con trỏ this trong static constructor • Ví dụ DEMO static constructor
- Lớp và phương thức Destructor • Đây là phương thức đặt biệt được tự động gọi để giải phóng vùng nhớ của đối tượng khi đối tượng không được sử dụng • Mỗi một lớp chỉ có duy nhất một destructor • Destructor không thể kế thừa và không thể gọi một cách tường minh • Trùng với tên của lớp và thêm ký tự ~ đằng trước tên destructor • Ví dụ về destructor
- Lớp và phương thức Garbage collector • Toán tử new dùng để cấp phát vùng nhớ cho một đối tượng. Tuy nhiên do bộ nhớ là giới hạn nên cần phải giải phóng vùng nhớ của các đối tượng khi các đối tượng không còn được sử dụng nữa để giành bộ nhớ cấp phát cho các đối tượng khác • Quá trình giải phóng vùng nhớ được thực hiện bởi cơ chế tên là Garbage collector trong .NET Framework
- Lớp và phương thức Con trỏ this • Dùng để tham chiếu đến đối tượng hiện tại của lớp • Nó dùng trong trường hợp khi đối số của phương thức hoặc đối số của constructor trùng với tên của các thuộc tính trong lớp. • Ví dụ DEMO con trỏ this
- Lớp và phương thức Phương thức(method) • Là các hàm bên trong một lớp, mỗi phương thức cài đặt một hành động của đối tượng • Các phương thức được gọi thông qua các đối tượng hoặc thông qua tên lớp nếu là phương thức tĩnh • Cú pháp để khai báo một phương thức ([danh sách đối số]) { } • Gọi phương thức: tênđốitượng.tênphươngthức(các đối số) Tênlớp.tênphươngthức.
- Lớp và phương thức Chồng phương thức(Method Overloading) • Trong một lớp, cho phép các phương thức có cùng tên nhưng khác nhau về số đối số hoặc kiểu của đối số, các phương thức như vậy gọi là method overloading • Ví dụ DEMO method overloading
- Lớp và phương thức Static member và non static member(các thuộc,phương thức tĩnh và các thuộc tính, phương thức không tĩnh) • Các thành phần tĩnh Các thuộc tính và phương thức tĩnh là các thành phần của lớp Các từ khóa static đằng trước thộc tính hoặc phương thức Chỉ có thể truy xuất đến các thành phần tĩnh này qua tên lớp • Các thành phần không tĩnh Là thành phần của đối tượng Không có từ khóa static đằng trước Chỉ được truy xuất thông qua đối tượng của lớp • Ví dụ DEMO
- Lớp và phương thức Operator Overloading • Các phép toán(toán tử) mà ngôn ngữ lập trình C# cung cấp chỉ thực hiện trên các kiểu dữ liệu cơ bản • Ví dụ biểu thức a+b thì a,b phải là 2 kiểu dữ liệu cơ bản(int, float) • Nếu a,b, là 2 đối tượng của một lớp nào đó thì phép cộng sẽ không thực hiện được. • Vậy để cộng được thì làm thế nào? • Câu trả lời phải định nghĩa lại phép cộng(chồng toán tử cộng) để nó có thể cộng được 2 đối tượng.
- Lớp và phương thức Ví dụ: để cộng 2 đối tượng time1 và time2 Cách 1: sử dụng phương thức: time = objTime.Add(time1, time2) Cách 2: dùng chồng toán tử: time = time1 + time2; =>Cách 2 dễ hiểu hơn. Các phép toán có thể đặt chồng là: Cú pháp:operator Ví dụ DEMO chồng toán tử(operator overloaded)
- Lớp và phương thức Phạm vi truy xuất • Các ngôn ngữ lập trình hướng đối tượng có khả năng giới hạn việc truy cập đến các thành phần trong lớp(thuộc tính, phương thưc..). • Access modifier là thuật ngữ chỉ định phạm vi truy xuất(được truy xuất ở những chỗ nào) của các thành phần bên trong lớp • Gồm có: public: cho phép một thành phần bên trong lớp được truy xuất bên trong lớp cũng như bên ngoài lớp private: chỉ cho phép các thành phần chỉ truy xuất được bên trong một lớp protected: cho phép các thành phần được truy xuất bên trong lớp cũng như các lớp kế thừa từ lớp đó. • Ví dụ DEMO
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng: Quản trị môi trường mạng
156 p | 481 | 24
-
Bài giảng Lập trình căn bản: Chương 1 - Võ Duy Tín
13 p | 144 | 18
-
Bài giảng Lập trình căn bản: Giới thiệu tổng quan
5 p | 112 | 13
-
Bài giảng C# và môi trường Donet - Bài 1: .Net Framework và C#
15 p | 81 | 8
-
Bài giảng C# và môi trường Donet - Bài 11: Collection (tập hợp)
18 p | 56 | 7
-
Bài giảng C# và môi trường Donet - Bài 4: Mảng, lệnh foreach, lớp random, kí tự và chuỗi kí tự
18 p | 79 | 7
-
Bài giảng C# và môi trường Donet - Bài 3: Các phép toán và các câu lệnh điều khiển
28 p | 82 | 7
-
Bài giảng C# và môi trường Donet - Bài 2: Biến, kiểu dữ liệu và câu lệnh nhập xuất
24 p | 60 | 7
-
Bài giảng C# và môi trường Donet - Bài 8: Properties and indexers
14 p | 59 | 5
-
Bài giảng C# và môi trường Donet - Bài 10: Exception handling
12 p | 65 | 5
-
Bài giảng C# và môi trường Donet - Bài 13: Delegate và event
14 p | 32 | 4
-
Bài giảng C# và môi trường Donet - Bài 9: Namespace
11 p | 46 | 4
-
Bài giảng C# và môi trường Donet - Bài 7: Lớp trừu tượng và giao diện
13 p | 48 | 4
-
Bài giảng C# và môi trường Donet - Bài 6: Kế thừa và da hình
16 p | 67 | 4
-
Bài giảng C# và môi trường Donet - Bài 12: Generic và Iterator
13 p | 56 | 3
-
Bài giảng Lập trình môi trường Window: Chương 2 - Ngô Thanh Hùng
139 p | 23 | 3
-
Bài giảng C Programming introduction: Tuần 1 - Thiết lập môi trường
26 p | 12 | 2
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn