Kế thừa đa cấp trong ví dụ python

Trong ví dụ của chúng ta, lớp con kế thừa lớp cha. Lớp con có thể truy cập các phương thức và biến của lớp cha

Chúng ta đã định nghĩa một đối tượng cho lớp con và truy cập các phương thức của lớp cha trong chương trình trên

Kế thừa đa cấp

Trong ví dụ trước, chúng ta kế thừa lớp cha. Ví dụ này là một cấp độ kế thừa

Nếu chúng ta kế thừa lớp nhiều hơn một cấp. Chúng tôi gọi là kế thừa đa cấp

Ví dụ được đưa ra dưới đây

class parent:
    def f(self):
        print("parent class f method")
    def f1(self):
        print("parent class f1 method")

class child(parent):
    def f2(self):
        print("child class f2 method")

class grandchild(child):
    def f5(self):
        print("this is grand child f5 method")

ob1=grandchild()
ob1.f5()
ob1.f2()
ob1.f1()
ob1.f()

Trong chương trình trên, lớp con kế thừa lớp cha và lớp cháu kế thừa lớp con

Lớp cháu đang có hai mức thừa kế. Nó có thể truy cập các thành viên trong lớp con và lớp cha

Chương trình trên là một ví dụ về kế thừa đa cấp

Đa thừa kế

Lấy một ví dụ và hiểu nhiều kế thừa

class a:
    def f1(self):
        print("This is class a f1 method")

class b:
    def f2(self):
        print("This is class b f2 method")
        
class c(a,b):
    def f5(self):
        print("This is class c f5 method")

ob1 = c()
ob1.f1()
ob1.f2()
ob1.f5()

Trong chương trình trên, chúng ta có một lớp a và trong lớp a, chúng ta có một phương thức f1

Chúng tôi đã có lớp b. Trong lớp b, chúng tôi đã có một phương thức f2

Lớp c đang kế thừa cả lớp a và lớp b. loại thừa kế này chúng tôi gọi là đa thừa kế

Trong kế thừa đa mức, các tính năng của lớp cơ sở và lớp dẫn xuất được kế thừa vào lớp dẫn xuất mới

  Cú pháp.
         lớp cơ sở1.
              nội dung của lớp cơ sở
         lớp dẫn xuất1( cơ sở1 ).
              nội dung của lớp dẫn xuất
         lớp dẫn xuất2( dẫn xuất1 ).
              nội dung của lớp dẫn xuất


Mã nguồn

# Multilevel Inheritance
 
class GrandFather:
    def ownHouse(self):
        print("Grandpa House")
 
 
class Father(GrandFather):
    def ownBike(self):
        print("Father's Bike")
 
 
class Son(Father):
    def ownBook(self):
        print("Son Have a Book")
 
 
o = Son()
o.ownHouse()
o.ownBike()
o.ownBook()
Để tải xuống tệp thô Bấm vào đây

đầu ra

Grandpa House
Father's Bike
Son Have a Book

Danh sách chương trình


Chương trình mẫu


Kết nối cơ sở dữ liệu Python


bình trăn


Hướng dẫn Python Tkinter


Kế thừa đa cấp trong lập trình (nói chung trong chương trình hướng đối tượng). Khi một lớp cơ sở được dẫn xuất bởi một lớp dẫn xuất được dẫn xuất bởi một lớp khác, thì nó được gọi là kế thừa đa cấp

Sơ đồ dưới đây sẽ làm cho mọi thứ rõ ràng hơn,

Tất cả các Lớp & phương thức được sử dụng trong chương trình.  

  • Lớp. Sinh viên
    • Phương pháp. getStudentInfo(). lấy số và tên của học sinh từ người dùng
    • Phương pháp. printStudentInfo(). in số học sinh và tên
  • Lớp. bsc
    • Phương pháp. getBsc(). lấy điểm của sinh viên từ người dùng
    • Phương pháp. putPerks(). in điểm của học sinh
    • Phương pháp. calcTotalMarks(). trả về tổng số điểm
  • Lớp. Kết quả
    • Phương pháp. getResult(). lấy thông tin của học sinh và tính tổng điểm
    • Phương pháp. inKết quả(). bản in thông tin sinh viên

Chương trình minh họa kế thừa đa cấp trong Python

class Student:
    def getStudentInfo(self):
        self.__rollno=input("Enter Roll Number: ")
        self.__name=input("Enter Name: ")

    def printStudentInfo(self):
        print("Roll Number : ", self.__rollno, "Name : ", self.__name)

class Bsc(Student):
    def getBsc(self):
        self.getStudentInfo()
        self.__p = int(input("Enter Physics Marks: "))
        self.__c = int(input("Enter Chem Marks: "))
        self.__m = int(input("Enter Maths Marks: "))

    def printBsc(self):
         self.printStudentInfo()
         print("Marks in different Subjects : ", self.__p,self.__c,self.__m)

    def calcTotalMarks (self):
        return(self.__p+self.__m+self.__c)

class Result(Bsc):
    def getResult(self):
        self.getBsc()
        self.__total=self.calcTotalMarks()

    def putResult(self):
        self.printBsc()
        print("Total Marks out of 300 : ", self.__total)

student = Result()
student.getResult()
student.putResult()

đầu ra

Enter Roll Number: 101
Enter Name: Shivang Yadav
Enter Physics Marks: 65
Enter Chem Marks: 78
Enter Maths Marks: 80
Roll Number :  101 Name :  Shivang Yadav
Marks in different Subjects :  65 78 80
Total Marks out of 300 :  223

Chương trình đối tượng và lớp Python »


Kế thừa đa cấp với ví dụ là gì?

Nó được gọi là kế thừa đa cấp. Ví dụ: nếu chúng ta lấy Grandfather làm lớp cơ sở thì Father là lớp dẫn xuất có các tính năng của Grandfather và sau đó Child là lớp dẫn xuất cũng được dẫn xuất từ ​​lớp con Father kế thừa tất cả các tính năng của Father

Python có kế thừa đa cấp không?

Kế thừa đa cấp Python . Đây được gọi là kế thừa đa cấp. Nó có thể ở bất kỳ độ sâu nào trong Python. Trong kế thừa đa mức, các tính năng của lớp cơ sở và lớp dẫn xuất được kế thừa vào lớp dẫn xuất mới. We can also inherit from a derived class. This is called multilevel inheritance. It can be of any depth in Python. In multilevel inheritance, features of the base class and the derived class are inherited into the new derived class.

Ví dụ thực tế về thừa kế đa cấp là gì?

Kế thừa đa cấp trong Java . Đây là một ví dụ về kế thừa đa cấp trong đó C kế thừa từ B và B kế thừa từ A. đầu ra. tôi là ông nội. a child inheriting from his father who inherited from his grandfather. This is an example of a multilevel inheritance where C inherits from B and B inherits from A. Output: I am the grandfather!

Tính kế thừa trong ví dụ thực tế về Python là gì?

Kế thừa trong Python . Giả sử tồn tại một lớp “Trái cây”, và bạn lấy từ nó để tạo một lớp mới có tên là “Apple”. Mối quan hệ đơn giản giữa hai lớp nói rằng “Apple” là “Fruit”.