Khái Niệm Lớp (Class) Và Đối Tượng (Object) Trong Python
Lập trình hướng đối tượng (OOP) là một trong những mô hình lập trình quan trọng trong Python. Hai khái niệm cốt lõi trong OOP là lớp (class) và đối tượng (object).

1. Lớp (Class) Là Gì?
Lớp là một khuôn mẫu để tạo ra các đối tượng. Nó chứa các thuộc tính (biến) và phương thức (hàm) để thao tác dữ liệu.
Cú pháp để định nghĩa một lớp trong Python:
class TenLop:
# Phương thức khởi tạo
def __init__(self, tham_so1, tham_so2):
self.thuoc_tinh1 = tham_so1
self.thuoc_tinh2 = tham_so2
# Phương thức
def hien_thi(self):
print(f"Thuộc tính 1: {self.thuoc_tinh1}, Thuộc tính 2: {self.thuoc_tinh2}")
2. Đối Tượng (Object) Là Gì?
Đối tượng là thể hiện cụ thể của một lớp. Khi tạo một đối tượng từ lớp, nó sẽ có dữ liệu riêng nhưng vẫn tuân theo khuôn mẫu của lớp đó.
Ví dụ về việc tạo đối tượng từ một lớp:
# Định nghĩa lớp
class Nguoi:
def __init__(self, ten, tuoi):
self.ten = ten
self.tuoi = tuoi
def gioi_thieu(self):
print(f"Tôi tên là {self.ten}, năm nay {self.tuoi} tuổi.")
# Tạo đối tượng từ lớp
nguoi1 = Nguoi("An", 25)
nguoi2 = Nguoi("Bình", 30)
# Gọi phương thức trên đối tượng
nguoi1.gioi_thieu()
nguoi2.gioi_thieu()
Kết quả:
Tôi tên là An, năm nay 25 tuổi.
Tôi tên là Bình, năm nay 30 tuổi.
Ở đây, nguoi1
và nguoi2
là hai đối tượng của lớp Nguoi
, mỗi đối tượng có giá trị riêng cho ten
và tuoi
.
3. Các Thành Phần Chính Trong Class
a. Thuộc tính (Attributes)
Thuộc tính là dữ liệu của đối tượng. Trong Python, chúng được khai báo trong phương thức __init__
và sử dụng từ khóa self
:
class HocSinh:
def __init__(self, ten, lop):
self.ten = ten # Thuộc tính
self.lop = lop # Thuộc tính
Mỗi đối tượng sẽ có giá trị riêng cho các thuộc tính này.
b. Phương thức (Methods)
Phương thức là hàm bên trong lớp, dùng để thao tác với dữ liệu của đối tượng.
class HocSinh:
def __init__(self, ten, lop):
self.ten = ten
self.lop = lop
def hien_thi(self):
print(f"Học sinh: {self.ten}, Lớp: {self.lop}")
# Tạo đối tượng
hs = HocSinh("Nam", "10A1")
hs.hien_thi()
Kết quả:
Học sinh: Nam, Lớp: 10A1
4. Ví Dụ Thực Tế: Lớp Car
class Car:
def __init__(self, hang, mau, nam_san_xuat):
self.hang = hang
self.mau = mau
self.nam_san_xuat = nam_san_xuat
def mo_ta(self):
print(f"Xe {self.hang} màu {self.mau}, sản xuất năm {self.nam_san_xuat}")
# Tạo đối tượng
car1 = Car("Toyota", "Đỏ", 2020)
car2 = Car("Honda", "Xanh", 2022)
# Gọi phương thức
car1.mo_ta()
car2.mo_ta()
Kết quả:
Xe Toyota màu Đỏ, sản xuất năm 2020
Xe Honda màu Xanh, sản xuất năm 2022
5. Tổng Kết
Khái niệm | Giải thích |
---|---|
Lớp (Class) | Là khuôn mẫu để tạo ra các đối tượng, chứa thuộc tính và phương thức. |
Đối tượng (Object) | Là một thực thể cụ thể được tạo từ lớp, có dữ liệu riêng. |
Thuộc tính | Là các biến bên trong đối tượng, lưu trữ dữ liệu. |
Phương thức | Là các hàm bên trong lớp, giúp thao tác với dữ liệu của đối tượng. |
Lớp và đối tượng giúp tổ chức code tốt hơn, dễ bảo trì và mở rộng.

Với hơn 10 năm kinh nghiệm lập trình web và từng làm việc với nhiều framework, ngôn ngữ như PHP, JavaScript, React, jQuery, CSS, HTML, CakePHP, Laravel..., tôi hy vọng những kiến thức được chia sẻ tại đây sẽ hữu ích và thiết thực cho các bạn.
Xem thêm

Chào, tôi là Vũ. Đây là blog hướng dẫn lập trình của tôi.
Liên hệ công việc qua email dưới đây.
lhvuctu@gmail.com