Mô tả:
Chương 3: Lớp và đối tượng
Nội dung chương 3
1. Định nghĩa lớp
2. Phương thức
3. thuộc tính truy cập
4. Tạo đối tượng
5. Sử dụng các thành viên static
6. Hủy đối tượng
7. Nạp chồng phương thức
8. Đóng gói dữ liệu với thành phần thuộc tính
1. Định nghĩa lớp
1. Định nghĩa lớp
Linh hồn của C# là khả năng tạo ra kiểu dữ liệu mới.
(class)
Là một đặc tính quan trọng của lập trình hướng đối
tượng.
Một cách nhìn mới trong lập trình
Lấy đối tượng làm nên tảng
Giúp thể hiện những đối tượng thế giới thực trên máy
tính một cách hiệu quả
Đơn giản hóa việc phát triển các chương trình
Giúp tạo ra những chương trình mang tính mềm dẻo
và linh động cao.
1. Định nghĩa lớp
Ưu điểm: Có một số những ưu điểm của việc sử dụng
class và đối tượng trong phát triển phần mềm.
Những ưu điểm nổi bật nhất được liệt kê như sau:
- Duy trì code bằng việc mô hình hóa
- Đóng gói những sự phức tạp trong mã lênh từ người
dùng
- Khả năng sử dụng lại mã nguồn
- Cung cấp đơn kế thừa để thực thi nhiều phương
thức.
1. Định nghĩa lớp
lớp:
Một lớp là một thiết kế (blueprint) hay mẫu
(prototype) dùng để biểu diễn một tập các đối tượng.
Lớp có hai thành phần chính là thuộc tính và phương
thức.
Thuộc tính của lớp tương ứng với thuộc tính của đối
tượng.
Phương thức của lớp chính là hành động của đối tượng
1. Định nghĩa lớp
Chó
Gà
Heo
Tên
Màu lông
Trọng lượng
Tên
Màu lông
Trọng lượng
Tên
Trọng lượng
……………
……………
……………
Cắn
Sủa
Bay
Gáy
Ngủ
Ăn
…………….
…………….
…………….
1. Định nghĩa lớp
Động vật
Tên loài
Số chân
Có cánh
……………
Chạy
Bay
…………….
1. Định nghĩa lớp
Trong lập trình hướng đối tượng, đối tượng là một
thực thể cụ thể, tồn tại trong hệ thống.
Trong khi đó, lớp là một khái niệm trừu tượng, dùng
để chỉ một tập hợp các đối tượng có trong hệ thống.
1. Định nghĩa lớp
Có thể xét ví dụ chi tiết cụ thể về loài chó:
- Chó thì gồm có nhiều loại: becgie, nhật, cỏ, mực, …
- Do đó ta có thể xây dựng 1 khuông mẫu là lớp chó.
Nếu muốn mô tả 1 loại cụ thể ta có thể khai báo đối
tượng becgie sau đó gán giá trị thuộc tính cho đối
tượng becgie
Ví dụ:
public static void main()
{
cho becgie;
}
1. Định nghĩa lớp
Ví dụ: trong bài toán quản lý buôn bán xe hơi của một
cửa hàng kinh doanh, mỗi chiếc xe đang có mặt tại
cửa hàng được coi là đối tượng. Nhưng khái niệm “ xe
hơi” là một lớp dùng để chỉ tất cả các loại xe hơi của
cửa hàng.
Để làm được bài này, đầu tiên phải xây
dựng lớp xe hơi để lưu trữ thông tin xe
hơi.
xác định xem xe hơi có những thuộc
tính gì và hành vi như thế nào
1. Định nghĩa lớp
Lớp Xe hoi:
Thuộc tính:
- Nhãn hiệu xe
- Màu xe
- Giá xe
- Công suất của xe
- Số lượng bán
- Ngày bán
Phương thức:
- khởi động xe
- Chạy xe
- Dừng xe
- Tắt máy
1. Định nghĩa lớp
Ví dụ:
Trong bài toán quản lý nhân viên của một văn phòng.
Mỗi nhân viên được coi là một đối tượng. Nhưng khái
niệm “nhân viên” là một lớp dùng để chỉ các nhân
viên.
Để làm được bài này, đầu tiên phải xây
dựng lớp nhân viên để lưu trữ thông tin
nhân viên.
xác định xem nhân viên có những thuộc
tính gì và hành vi như thế nào
1. Định nghĩa lớp
Lớp NhanVien:
Thuộc tính:
- Mã nhân viên
- Tên nhân viên
- Hệ số lương
- Lương căn bản
- Ngày vào làm
- Chức vụ
- Phòng ban
Phương thức:
- Nhập
- Xuất
- Tính lương
1. Định nghĩa lớp
Định nghĩa lớp:
[thuộc tính truy cập] class <Định danh lớp> [: Lớp cơ sở]
{
}
Trong đó: định danh lớp chính là tên của lớp.
Lớp cơ sở: là lớp mà đối tượng sẽ kế thừa.
Tất các các thành viên của lớp phải bao bọc bởi {}
1. Định nghĩa lớp
Bài tập:
1. Xây dựng lớp xe hơi trong bài toán quản lý việc
buôn bán xe
2. Xây dựng lớp nhân viên trong bài toán quản lý
nhân viên của văn phòng
1. Định nghĩa lớp
Trong C# tất cả mọi chuyện đều xảy ra trong một class.
Các hàm/phương thức đều được đưa vào trong một lớp,
kể cả hàm đầu vào của chương trình (hàm Main())
Ví dụ:
class Tester
{
public static int Main()
{
//....
}
}
1. Định nghĩa lớp
Ví dụ:
2. Phương thức
2. Phương thức
Giống hàm/thủ tục trong C/C++
Có 2 loại chính
- Trả về giá trị (gọi là hàm)
- Kiểu void (gọi là thủ tục)
Để dễ hiểu có thể gọi “phương thức”
Cấu trúc 1 phương thức
[thuộc tính truy cập] ([Tham số đầu
vào])
private, protected,
public, ….
int, float, double, …
- Xem thêm -