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ì:
animal
vàdog
là 2 class. Trong đó classdog
kế thừa từ class cha là classanimal
nên sẽ có các phương thức của classanimal
.name
vàage
là 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ốself
dù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 classdog
gọi làoverride
của phương thứcrun()
của classanimal
.