Bài 4: Classes, objects và namespaces - Nền tảng lập trình C#


Lập trình hướng đối tượng (OOP) là một phương pháp thiết kế và phát triển phần mềm dựa trên kiến trúc lớp (class) và đối tượng (object). OOP là cách lập trình nhằm hướng các xử lý đến từng đối tượng, mỗi đối tượng sẽ có các xử lý của riêng nó


1. Tổng quan về lập trình hướng đối tượng

  • Khái niệm
    • Lập trình hướng đối tượng (OOP) là một phương pháp thiết kế và phát triển phần mềm dựa trên kiến trúc lớp (class) và đối tượng (object).
    • OOP là cách lập trình nhằm hướng các xử lý đến từng đối tượng, mỗi đối tượng sẽ có các xử lý của riêng nó
  • Đối tượng (object) là một thực thể trong thực tế
    • Con người
      • Nhân viên Trần Anh Tuấn
      • Sinh viên Lê Bảo Huy
    • Đồ vật
      • Bàn B01
      • Phòng học E304
    • Chứng từ
      • Hóa đơn HD200606-S21
      • Đơn đặt hàng DH200605-K01
  • Các thông tin về đối tượng:
    • Ví dụ: Đối tượng Xe Ô tô
    • Mã số xe
    • Hiệu xe
    • Màu sơn
    • Hãng sản xuất
    • Năm sản xuất
  • Tiếp cận hướng đối tượng
    • Là kỹ thuật cho phép biểu diễn tự nhiên các đối tượng trong thực tế với các đối tượng bên trong chương trình
    • "Nhân cách hóa" đối tượng

Ví dụ 1 tiếp cận hướng đối tượng

Ví dụ 2 tiếp cận hướng đối tượng

Các thành phần của lớp (Class)

  • Lớp đối tượng (Class)
    • Class là một khái niệm trong Lập trình hướng đối tượng mô tả cho những thực thể có chung tính chất và hành vi. Class định nghĩa những thuộc tính và hành vi được dùng cho những đối tượng của lớp đó
    • Kết quả của sự TRỪU TƯỢNG HOÁ (Abstraction) các đối tượng:
      • Cùng loại
      • Cùng các thông tin mô tả về đối tượng

Class ô tô

  • Các thành phần của lớp
    • Biến thành viên (Field)
      • Lưu trữ các thông tin mô tả về đối tượng
      • Ví dụ: Lưu trữ thông tin về nhân viên
        • Mã nhân viên
        • Họ nhân viên
        • Tên nhân viên
        • Ngày sinh
        • Ngày vào làm
        • Hệ số lương
        • Số con
    • Thuộc tính và Phương thức
      • Dùng để cập nhật, tí á nh toán, cung cấp và xử lý ô thông tin của đối tượng
      • Ví dụ: Thuộc tính
        • He so luong _so_luong: Cập nhật/cung cấp thông tin về hệ số lương của nhân viên
        • Tham_nien: Cung cấp thông tin về thâm niên của nhân viên
      • Ví dụ: Phương thức
        • Tien_luong: Tính tiền lương cho nhân viên
        • Tro_cap: Tính trợ cấp cho nhân viên
        • Tien_thuong: Tính tiền thưởng cho nhân viên
    • Sự kiện
      • Gởi thông báo của đối tượng ra bên ngoài

Ví dụ class ô tô

Ví dụ class nhân viên

Các đặc trưng cơ bản

  • Tính trừu tượng (Abstraction)
    • Lớp (Class) là một khái niệm trừu tượng. Ví dụ: 1 bản thiết kế (bản vẽ) xe hơi => Lớp Xe hơi
    • Đối tượng (Object) là một thể hiện cụ thể của lớp. Ví dụ: 1 chiếc xe hơi được xuất xưởng là 1 sản phẩm cụ thể được tạo ra từ bản thiết kế gốc => Đối tượng Xe hơi
    • Từ những đối tượng giống nhau, ta có thể trừu tượng hoá thành 1 lớp
  • Tính đóng gói (Encapsulation)
    • Mỗi lớp được xây dựng để thực hiện một nhóm chức năng đặc trưng của riêng lớp đó. Ví dụ:
    • Muốc thực hiện các hàm toán học => lớp Math
    • Muốn xử lý chuỗi => lớp String
  • Tính kế thừa (Inheritance)
    • Tính chất này cho phép xây dựng những lớp mới dựa trên những lớp sẵn có (lớp Con kế thừa lớp Cha)
    • Lớp Con có khả năng bổ sung, mở rộng những tính năng mới dựa trên những phần sẵn có ở lớp Cha. Ví dụ:
      • Các loại xe đời mới ngày càng hiện đại hơn và có nhiều chức năng tiện dụng hơn những loại xe đời cũ

2. Xây dựng class trong C#

Khái niệm

  • Một class là kết quả của sự trừu tượng hóa đại diện chung cho dữ liệu và các hành vi của một thực thể hay một tập các đối tượng
  • Các classes còn mang ý nghĩa là một kiểu dữ liệu và là các khối xây dựng cơ sở của các trình ứng dụng hướng đối tượng

Khai báo class

<từ khóa khai báo phạm vi> class <tên_lớp>
{
// khai báo các sự kiện (Events)
// khai báo các biến thành viên (Fields)
// khai báo các thuộc tính (Properties)
// kh i bá á h ai báo các phương thức (Methods)
// ...
}

Ý nghĩa:

  • Từ khóa khai báo phạm vi: xác định phạm vi hoạt động của class N . Nếu không chỉ ra từ khóa khai báo phạm vi thì class sẽ có phạm vi hoạt động là private (cục bộ).
  • Các từ khóa khai báo phạm vi thường dùng khi khai báo class:
    • Private
    • Protected
    • Public
    • Static

Cách tạo file class

  • Tạo thư mục chứa các class
  • Click phải vào thư mục => Chọn Add \ Add Class
  • Đặt tên cho tập tin (*.cs)

Ví dụ: tạo một class có tên là Nhan_vien

 

Chia sẽ bài viết :


Bài viết liên quan