2. Class và Object trong lập trình C# hướng đối tượng

Trong lập trình C# hướng đối tượng, lớp (class) và đối tượng (object) là hai khái niệm cơ bản. Dưới đây là mô tả chi tiết về chúng:

Lớp (Class):

  • Lớp là một mẫu hoặc bản thiết kế định nghĩa các thuộc tính (biến thành viên) và phương thức (hàm thành viên).
  • Lớp định nghĩa cách một đối tượng sẽ có các thuộc tính và hành vi như thế nào.
  • Mỗi đối tượng thuộc một lớp cụ thể.
  • Lớp cũng có thể định nghĩa các phương thức tĩnh (static methods), thuộc tính tĩnh (static properties), lớp nội tĩnh (static nested classes), v.v.
  • Ví dụ: Trong một ứng dụng quản lý học sinh, lớp Student có thể định nghĩa các thuộc tính như Name, Age, Grade, và các phương thức như CalculateAverageScore().

Đối tượng (Object):

  • Đối tượng là một thể hiện cụ thể của một lớp.
  • Đối tượng bao gồm các thuộc tính và hành vi đã được định nghĩa trong lớp tương ứng.
  • Mỗi đối tượng có một trạng thái riêng biệt dựa trên giá trị của các thuộc tính.
  • Để tạo đối tượng, bạn cần sử dụng từ khóa new.
  • Ví dụ: Nếu lớp Student định nghĩa các thuộc tính Name, Age, bạn có thể tạo một đối tượng học sinh mới bằng cách Student student = new Student();.

Dưới đây là một ví dụ minh họa:

csharp
class Student {
    // Thuộc tính
    public string Name;
    public int Age;

    // Phương thức
    public void DisplayInfo() {
        Console.WriteLine("Name: " + Name);
        Console.WriteLine("Age: " + Age);
    }
}

class Program {
    static void Main() {
        // Tạo một đối tượng học sinh
        Student student = new Student();

        // Gán giá trị cho các thuộc tính
        student.Name = "Alice";
        student.Age = 18;

        // Gọi phương thức hiển thị thông tin
        student.DisplayInfo();
    }
}

Trong ví dụ trên, Student là lớp định nghĩa thuộc tính NameAge, cũng như phương thức DisplayInfo. student là một đối tượng của lớp Student, và bạn có thể truy cập và sử dụng thuộc tính và phương thức của nó trong lập trình C# hướng đối tượng.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top