Lập trình hướng đối tượng là một khái niệm không thể thiếu trong hầu hết các ngôn ngữ thông dụng hiện nay. Python cũng hỗ trợ lập trình hướng đối tượng với các khái niệm Class, Object, Override…
Tìm việc làm python lương cao cho bạn
4.1. Khai báo một Class
Khai báo một class theo cú pháp sau:
class myclass([parentclass]):
assignments
def __init__(self):
statements
def method():
statements
def method2():
statements
Ví dụ một class:
class animal():
name = ''
age = 0
def __init__(self, name = '', age = 0):
self.name = name
self.age = age
def show(self):
print 'My name is ', self.name
def run(self):
print 'Animal is running...'
def go(self):
print 'Animal is going...'
class dog(animal):
def run(self):
print 'Dog is running...'
myanimal = animal()
myanimal.show()
myanimal.run()
myanimal.go()
mydog = dog('Lucy')
mydog.show()
mydog.run()
mydog.go()
Sau khi thực thi sẽ cho ra kết quả:
My Name is Animal is running... Animal is going... My Name is Lucy Dog is running... Animal is going...
Trong ví dụ trên thì:
animalvàdoglà 2 class. Trong đó classdogkế thừa từ class cha là classanimalnên sẽ có các phương thức của classanimal.namevàagelà thuộc tính (Attribute) của class.- Phương thức
__init__(self)là hàm tạo của class. Hàm này sẽ được gọi mỗi khi có một object mới được tạo (từ một class), gọi là quá trình tạo instance. show(),run()vàgo()là 2 phương thức của 2 class. Khi khai báo phương thức có kèm tham sốselfdùng để truy cập ngược lại object đang gọi. Lúc gọi phương thức thì không cần truyền tham số này.- Phương thức
run()của classdoggọi làoverridecủa phương thứcrun()của classanimal.






![[Python cơ bản thường dùng trong công việc] Phần 15 : Socket programming](https://topdev.vn/blog/wp-content/uploads/2018/05/class-trong-python-218x150.png)