Bài 1: Giới thiệu về Trình quản lý quảng cáo

Bài giảng: Lớp và Đối tượng trong C#

1. Giới thiệu về Lớp và Đối tượng

Trong lập trình hướng đối tượng (OOP), "lớp" (class) và "đối tượng" (object) là hai khái niệm cốt lọi:

  • Lớp là khuôn mẫu (định nghĩa) cho các đối tượng.
  • Đối tượng là thực thể của lớp, tạo ra từ lớp.

Ví dụ: Lớp "XeHoi" là bản thiết kế chung, còn các đối tượng như "XeToyota", "XeHonda" là các xe cụ thể được tạo ra từ lớp đó.


2. Cách Định Nghĩa Lớp Trong C#

Cấu trúc cơ bản của một lớp:

public class TenLop
{
    // Thuộc tính (Fields/Properties)
    public string ThuocTinh1 { get; set; }
    public int ThuocTinh2 { get; set; }

    // Phương thức (Methods)
    public void PhuongThuc1()
    {
        Console.WriteLine("Phương thức 1 được gọi");
    }
}

Ví dụ: Lớp "SinhVien"

public class SinhVien
{
    public string HoTen { get; set; }
    public int Tuoi { get; set; }
    
    public void HienThiThongTin()
    {
        Console.WriteLine($"Sinh viên: {HoTen}, Tuổi: {Tuoi}");
    }
}

3. Thuộc tính và Phương thức

3.1 Thuộc tính (Properties)

  • Thuộc tính là các biến lưu trữ dữ liệu cho đối tượng.

  • Trong C#, thuộc tính thường có gettersetter để truy xuất và cập nhật giá trị.

Ví dụ:

public class SanPham
{
    public string Ten { get; set; }
    public double Gia { get; set; }
}

Ở đây, TenGia là thuộc tính của lớp SanPham.

3.2 Phương thức (Methods)

  • Phương thức là các hành động mà đối tượng có thể thực hiện.

  • Chúng có thể có tham số đầu vào và giá trị trả về.

Ví dụ:

public class SanPham
{
    public string Ten { get; set; }
    public double Gia { get; set; }
    
    public void HienThiThongTin()
    {
        Console.WriteLine($"Sản phẩm: {Ten}, Giá: {Gia} VND");
    }
}

Phương thức HienThiThongTin() in thông tin của sản phẩm ra màn hình.


4. Cách Tạo Đối Tượng Từ Lớp

Sau khi định nghĩa lớp, ta có thể tạo đối tượng bằng từ khoá new:

SinhVien sv = new SinhVien();
sv.HoTen = "Nguyễn Văn A";
sv.Tuoi = 20;
sv.HienThiThongTin();

Output:

Sinh viên: Nguyễn Văn A, Tuổi: 20

Cách khởi tạo nhanh:

SinhVien sv2 = new SinhVien { HoTen = "Trần Thị B", Tuoi = 22 };
sv2.HienThiThongTin();

5. Constructor - Phương Thức Khởi Tạo

Constructor là phương thức được gọi khi tạo đối tượng:

public class SinhVien
{
    public string HoTen { get; set; }
    public int Tuoi { get; set; }
    
    // Constructor
    public SinhVien(string hoTen, int tuoi)
    {
        HoTen = hoTen;
        Tuoi = tuoi;
    }
}

SinhVien sv = new SinhVien("Lê Văn C", 21);
Console.WriteLine($"{sv.HoTen} - {sv.Tuoi} tuổi");

5. Kết luận

  • Lớp là bản thiết kế chung, đối tượng là thực thể tạo ra từ lớp.
  • Lớp gồm thuộc tính và phương thức.
  • Sử dụng new để tạo đối tượng.
  • Constructor giúp khởi tạo dữ liệu ban đầu cho đối tượng.

Bài tập: Viết một lớp "SanPham" có thuộc tính "Ten", "Gia" và phương thức "HienThiThongTin()". Tạo đối tượng và hiển thị thông tin sản phẩm.

Bài tập: Quản lý Sinh viên bằng Lớp và Đối tượng trong C#


Yêu cầu chi tiết

1. Tạo lớp SinhVien với các thuộc tính sau:

  • MaSo (string): Mã số sinh viên.
  • HoTen (string): Họ và tên sinh viên.
  • NamSinh (int): Năm sinh của sinh viên.
  • DiemTrungBinh (float): Điểm trung bình của sinh viên.

2, Viết các phương thức trong lớp SinhVien

  • HienThiThongTin()
    => Input: Đối tượng SinhVien

=> output: Hiển thị ra màn hình theo định dạng "Ma So: SV001 - Ho Ten: Nguyen Van A - Nam Sinh: 2000 - Diem TB: 8"

  • ThemSinhVien(): Đầu vào là MaSo. HoTen, NamSinh, DiemTrungBinh => Trả về một đối tượng SinhVien

=> Input: MaSo. HoTen, NamSinh, DiemTrungBinh

=> output: Trả về một đối tượng SinhVien

​​​​​​​3. Viết chương trình Main() để thực hiện các chức năng sau:

  • Khởi tạo đối tượng SinhVien, truyền thông tin đầy đủ và hiển thị lên màn hình
  • Sử dụng 2 hàm ở bên trên để thực hiện hiển thị lên màn hình

Nộp bài: File cs hoặc copy code vào phần nội dung trả lời trên website