Danh mục

Bài giảng Lập trình nâng cao: Bài 3 - Lý Anh Tuấn

Số trang: 48      Loại file: pdf      Dung lượng: 641.48 KB      Lượt xem: 1      Lượt tải: 0    
10.10.2023

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

Thông tin tài liệu:

Bài giảng cung cấp cho người học các kiến thức: Khái niệm về lớp và đối tượng, thiết kế các thuộc tính và hành động của lớp, cài đặt các phương thức, truy xuất và cập nhật dữ liệu, nạp chồng phương thức,... Mời các bạn cùng tham khảo nội dung chi tiết.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình nâng cao: Bài 3 - Lý Anh TuấnObject-Oriented Programming Using C# NGÔN NGỮ LẬP TRÌNH NÂNG CAO Ver. 1.0 Slide 1 of 25Object-Oriented Programming Using C#Nội dung Khái niệm về lớp và đối tượng Thiết kế các thuộc tính và hành động của lớp Cài đặt các phương thức - Truy xuất và cập nhật dữ liệu (get-set) - Nạp chồng phương thức (overload) - Hàm tạo (constructor) - Nạp chồng toán tử (operator) - Ghi đè phương thức có sẵn (override) Ver. 1.0 Slide 2 of 25Object-Oriented Programming Using C#Khái niệm • Lớp đối tượng: Định nghĩa các đặc điểm/thông tin (thuộc tính) và hành động/chức năng (phương thức) chung cho tất cả các đối tượng của cùng một loại • Đối tượng: Thể hiện (instance) cụ thể của một lớp đối tượng Ver. 1.0 Slide 3 of 25Object-Oriented Programming Using C#Khái niệm VD: Lớp SINHVIEN gồm • Thuộc tính: Họ tên, giới tính, ngày tháng năm sinh, điểm tb, đối tượng ưu tiên, ... • Phương thức: Học bài, làm bài thi, bài tập, ... Sinh viên Nguyễn Văn A, Lê Thị B là đối tượng thuộc lớp SINHVIEN Ver. 1.0 Slide 4 of 25Object-Oriented Programming Using C#Đối tượng trong lập trình hướng đối tượng Tách biệt giữa giao tiếp và cài đặt cụ thể Làm cái gì? interface Làm bằng cách nào? Implementation Ver. 1.0 Slide 5 of 25Object-Oriented Programming Using C#Một cách thể hiện điển hình Che giấu dữ liệu và các “giải thuật” cụ thể ở bên trong lớp (class) Ver. 1.0 Slide 6 of 25Object-Oriented Programming Using C#Cú pháp định nghĩa lớp class { các thuộc tính; phương thức () { Cài đặt } } Ver. 1.0 Slide 7 of 25Object-Oriented Programming Using C#Từ khóa truy xuất  private (mặc định): Truy xuất trong nội bộ lớp (thường sử dụng cho thuộc tính).  protected: Truy xuất trong nội bộ lớp/ lớp con (được sử dụng cho lớp cơ sở)  public: Truy xuất mọi nơi (thường sử dụng cho phương thức).  static: truy xuất không cần khởi tạo đối tượng của lớp. Ver. 1.0 Slide 8 of 25Object-Oriented Programming Using C#VD: Định nghĩa lớp CHocSinh public class CHocSinh { private string hoten; private int toan, van; private float dtb; public void Nhap() {} public void Xuat() {} } Ver. 1.0 Slide 9 of 25Object-Oriented Programming Using C#Tạo và sử dụng đối tượng  Tạo đối tượng TênĐốiTượng = new (); VD: HOCSINH hsA = new HOCSINH();  Sử dụng đối tượng TênĐốiTượng.TênPhươngThức([tham số]); VD: hsA.Nhap(); hsA.Xuat(); Ver. 1.0 Slide 10 of 25Object-Oriented Programming Using C#Ví dụ Nhập họ tên, điểm văn và điểm toán của 1 học sinh. Tính điểm TB và in kết quả: public class HOCSINH { private string hoten; private int toan, van; private float dtb; public void Nhap() { Console.Write(Nhap ho ten: ); hoten = Console.ReadLine(); Console.Write(Nhap diem van: ); van = int.Parse(Console.ReadLine()); Console.Write(Nhap diem toan: ); toan = int.Parse(Console.ReadLine()); dtb = (float)(toan + van) / 2; } public void Xuat() { Console.WriteLine(Diem trung binh: {0:0.00}, dtb); } } Ver. 1.0 Slide 11 of 25Object-Oriented Programming Using C#Ví dụ class Program { static void Main(string[] args) { HOCSINH hsA = new HOCSINH(); hsA.Nhap(); hsA.Xuat(); } } Kết quả: Ver. 1.0 Slide 12 of 25Object-Oriented Programming Using C#Ràng buộc Ràng buộc trên lớp là các quy định, quy tắc áp đặt trên các giá trị thuộc tính của đối tượng trong lớp, sao cho đối tượng này thể hiện đúng với thực tế.  Ràng buộc tĩnh: ràng buộc trên giá trị thuộc tính.  Ràng buộc động: ràng buộc trên biến đổi giá trị thuộc tính. VD:  “Lương của nhân viên ít nhất là 1.500.000 đồng”  Ràng buộc tĩnh.  “Lương của nhân viên chỉ có thể tăng”  Ràng buộc động. Ver. 1.0 Slide 13 of 25Object-Oriented Programming Using C#Ràng buộc tĩnh Gồm 2 loại:  Ràng buộc trên thuộc tính (Ràng buộc miền giá trị)  Ràng buộc liên thuộc tính VD:  Điểm toán của sinh viên phải nằm trong miền giá trị từ 0 đến 10: 0 ≤ toan ≤ 10  Ràng buộc trên thuộc tính  Nếu là tháng 2 và là năm nhuận thì tháng có 29 ngày, nếu là tháng 2 và không phải năm nhuận thì tháng có 28 ngày  Ràng buộc liên thuộc tính Ver. 1.0 Slide 14 of 25Object-Oriented Programming Using C#Các hành động của lớp 1. Nhóm kiểm tra ràng buộc: Kiểm tra tính hợp lệ giá trị thuộc tính của đối tượng 2. Nhóm khởi tạo: Cung cấp giá trị ban đầu cho đối tượng 3. Nhóm cập nhật: Thay đổi giá trị thuộc tính của đối tượng 4. Nhóm xử lý tính toán: Xử lý tính toán các yêu cầu từ thông tin của đối tượng ...

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