Kế thừa là một khái niệm trong lập trình hướng đối tượng, trong đó các lớp hiện tại có thể được sửa đổi bởi một lớp mới. Lớp hiện có được gọi là lớp cơ sở và lớp mới được gọi là lớp dẫn xuất. Trong bài đăng này, chúng ta sẽ thảo luận về kế thừa lớp trong python
Bắt đầu nào
Cú pháp kế thừa lớp python như sau
class BaseClass:
#body of BaseClass
class DerivedClass[BaseClass]:
#body of DerivedClass
Ví dụ của chúng tôi, chúng tôi sẽ xem xét một lớp dẫn xuất SpotifyUser kế thừa từ lớp cơ sở FacebookUser. Trước tiên, hãy xác định lớp FacebookUser của chúng tôi
class FacebookUser:
pass
Bây giờ hãy xem xét một số thuộc tính của người dùng Facebook. Hãy thêm tên, họ và danh sách bạn bè
class FacebookUser:
def __init__[self, first_name, last_name, friends_list]:
self.first_name = first_name
self.last_name = last_name
self.friends_list = friends_list
Chúng tôi cũng có thể thêm một phương thức in tên đầy đủ của người dùng
class FacebookUser:
...
def print_name[self]:
print[f'{self.first_name} {self.last_name}']
Hãy cũng thêm một phương thức in danh sách bạn bè
class FacebookUser:
...
def print_friends[self]:
print[f'{self.friends_list}']
Bây giờ hãy tạo một thể hiện của lớp FacebookUser
User1 = FacebookUser['Mike', 'Tyson', ['Buster Douglas', 'Evander Holyfied', 'Roy Jones Jr.']]
Bây giờ chúng ta có thể gọi phương thức 'print_name'
User1.print_name[]
Thừa kế đơn
Khi một lớp con chỉ kế thừa một lớp cha duy nhất
class Parent: def func1[self]: print["this is function one"] class Child[Parent]: def func2[self]: print[" this is function 2 "] ob = Child[] ob.func1[] ob.func2[]
Đa thừa kế
Khi một lớp con kế thừa từ nhiều hơn một lớp cha
class Parent: def func1[self]: print["this is function 1"] class Parent2: def func2[self]: print["this is function 2"] class Child[Parent , Parent2]: def func3[self]: print["this is function 3"] ob = Child[] ob.func1[] ob.func2[] ob.func3[]
Kế thừa đa cấp
Khi một lớp con trở thành lớp cha của một lớp con khác
class Parent: def func1[self]: print["this is function 1"] class Child[Parent]: def func2[self]: print["this is function 2"] class Child2[Child]: def func3["this is function 3"] ob = Child2[] ob.func1[] ob.func2[] ob.func3[]
Kế thừa phân cấp
Kế thừa phân cấp liên quan đến nhiều kế thừa từ cùng một lớp cơ sở hoặc lớp cha
class Parent: def func1[self]: print["this is function 1"] class Child[Parent]: def func2[self]: print["this is function 2"] class Child2[Parent]: def func3[self]: print["this is function 3"] ob = Child[] ob1 = Child2[] ob.func1[] ob.func2[]
Kế thừa lai
Kế thừa lai bao gồm nhiều kế thừa diễn ra trong một chương trình duy nhất
class Parent: def func1[self]: print["this is function one"] class Child[Parent]: def func2[self]: print["this is function 2"] class Child1[Parent]: def func3[self]: print[" this is function 3"]: class Child3[Parent , Child1]: def func4[self]: print[" this is function 4"] ob = Child3[] ob.func1[]
Hàm siêu[] của Python
Siêu hàm cho phép chúng ta gọi một phương thức từ lớp cha
class Parent: def func1[self]: print["this is function 1"] class Child[Parent]: def func2[self]: Super[].func1[] print["this is function 2"] ob = Child[] ob.func2[]
Ghi đè phương thức Python
Ghi đè phương thức
Bạn có thể ghi đè một phương thức trong python. Nhìn vào ví dụ dưới đây
class Parent: def func1[self]: print["this is parent function"] class Child[Parent]: def func1[self]: print["this is child function"] ob = Child[] ob.func1[]
Chức năng của phương thức lớp cha được thay đổi bằng cách ghi đè phương thức tương tự trong lớp con
Kế thừa là một trong những khái niệm quan trọng nhất của OOP. Nó cung cấp khả năng sử dụng lại mã, khả năng đọc và chuyển đổi các thuộc tính giúp xây dựng mã được tối ưu hóa và hiệu quả. Ngôn ngữ lập trình Python được tải với các khái niệm như thừa kế. Các ứng dụng python khổng lồ đòi hỏi số lượng lập trình viên python ngày càng tăng trong thị trường gần đây. Để nắm vững các kỹ năng của bạn và bắt đầu quá trình học tập, hãy đăng ký chương trình chứng nhận python của Edureka và trở thành nhà phát triển python ngay lập tức
Có bất kỳ câu hỏi? . Nhóm của chúng tôi sẽ liên hệ lại với bạn sớm nhất có thể