Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Các khái niệm cơ bản của OOP trong Python

Các khái niệm OOP trong Python

Python là ngôn ngữ lập trình hướng đối tượng. Chúng ta có thể dễ dàng tạo và sử dụng class và object trong Python.

Các khái niệm hướng đối tượng chính của Python bao gồm:

  • Object (Đối tượng)
  • Class (Lớp)
  • Method (Phương thức)
  • Inheritance (Kế thừa)
  • Polymorphism (Đa hình)
  • Data Abstraction (Trừu tượng hóa dữ liệu)
  • Encapsulation (Đóng gói)

Object (Đối tượng)

Object là thực thể có trạng thái (state) và hành vi (behaviour). Có thể là vật lý hoặc logic. Ví dụ: chuột, bàn phím, ghế, bàn, bút, v.v.

Mọi thứ trong Python đều là object, và hầu như mọi thứ đều có thuộc tính và phương thức.

Class (Lớp)

Class là tập hợp các object. Là thực thể logic chứa các thuộc tính và phương thức cụ thể. Ví dụ: class Student có thuộc tính email, tên, tuổi, mã số sinh viên, v.v.

Method (Phương thức)

Method là hàm gắn liền với một object. Trong Python, method không chỉ dành cho instance của class; bất kỳ kiểu object nào cũng có thể có method.

Inheritance (Kế thừa)

Kế thừa cho phép một object thừa hưởng tất cả thuộc tính và hành vi của object cha. Sử dụng kế thừa, ta định nghĩa class mới với ít hoặc không thay đổi class hiện có. Class mới gọi là derived/child class, class gốc là base/parent class. Kế thừa cung cấp tính tái sử dụng code.

Polymorphism (Đa hình)

Đa hình nghĩa là một tác vụ có thể thực hiện theo nhiều cách khác nhau. Ví dụ: class Animal và tất cả động vật đều "nói", nhưng mỗi loài nói khác nhau. "Nói" là hành vi trừu tượng của Animal, nhưng từng loài cụ thể triển khai hành động "nói" riêng.

Encapsulation (Đóng gói)

Đóng gói dùng để hạn chế truy cập vào phương thức và biến. Code và data được gói gọn trong một đơn vị duy nhất, tránh bị sửa đổi ngẫu nhiên.

Data Abstraction (Trừu tượng hóa dữ liệu)

Trừu tượng hóa dữ liệu và đóng gói là đồng nghĩa vì trừu tượng hóa đạt được thông qua đóng gói.

Trừu tượng hóa dùng để ẩn chi tiết nội bộ, chỉ hiển thị chức năng. Trừu tượng hóa nghĩa là đặt tên cho các thứ, để tên gọi nắm bắt ý tưởng cốt lõi của một hàm hoặc chương trình.