-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathInheritance.py
124 lines (110 loc) · 2.41 KB
/
Inheritance.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
#single inheritance
# class son:
# def __init__(self,name,dname):
# self.name=name
# self.dname = dname
# class dad(son):
# def get(self):
# self.name=input("Enter your name : ")
# self.dname=input("Enter your father's name : ")
# print("Your name is : ",self.name)
# print("Your father's name :",self.dname)
# z=dad('','')
# z.get()
#mutlilevel inheritance
# class A:
# def __init__(self,name,dname):
# self.name=name
# self.dname = dname
#
# class B(A):
# def get(self):
# self.name=input("Enter your name : ")
# self.dname=input("Enter your father's name : ")
# print("Your name is : ",self.name)
# print("Your father's name :",self.dname)
#
# class C(B):
# def poc(self):
# print("ooo llaaaaa")
#
# class D(C):
# def build(self):
# print("Hiii llaaaaa")
#
# z=D('','')
# z.get()
# z.poc()
# z.build()
#---------------------------------------------------------------
# class A:
# def __init__(self,name):
# self.n=name
# def A1(self):
# self.n=input('Enter your Name : ')
# class B(A):
# def __init__(self,age):
# self.a=age
# def B1(self):
# self.a=int(input('Enter your Age : '))
# def data(self):
# print('Name : ',self.n)
# print('Age : ',self.a)
# class C(A):
# def final(self):
# print('Bye....Bye.....')
#
# i=B('')
# i.A1()
# i.B1()
# i.data()
#
# o=C('')
# o.final()
#-------------------------------------------
# class A:
# def __init__(self):
# print('Parent class')
# def first(self,name):
# print('first class')
# self.n=name
#
# class B():
# def child_class(self):
# print('child class')
# def second(self):
# print('second class')
# def display(self):
# print('Name : ',self.n)
#
# class C(A,B):
# def final(self):
# print('final classs')
#
#
# obj=C()
# obj.first('Arun')
# obj.child_class()
# obj.second()
# obj.display()
# obj.final()
#-------------------------------------------
# MRO - Method Resolution Order
# class A:
# def display(self):
# print('first')
# class B:
# def display(self):
# super().display()
# print('second')
# class C(B,A):
# def third(self):
#
# print('third')
#
# x=C()
# x.display()
# x.third()
#
# print(C.mro())
#----------------------------------------------