python--类继承
【摘要】
python--类继承
'''继承继承语法:class 子类(父类):子类中定义与父类同名的方法或属性,则会覆盖父类的同名方法和属性'''# 简单的继承class Parent: def hello(self): print('我是父类的方法')class Child(Parent): pas...
python--类继承
-
'''
-
继承
-
继承语法:class 子类(父类):
-
子类中定义与父类同名的方法或属性,则会覆盖父类的同名方法和属性
-
-
'''
-
# 简单的继承
-
class Parent:
-
def hello(self):
-
print('我是父类的方法')
-
class Child(Parent):
-
pass
-
-
c = Child()
-
c.hello() #子类调用父类的方法 我是父类的方法
-
-
# 子类调用与父类同名的方法或属性
-
class Parent:
-
def hello(self):
-
print('我是父类的方法')
-
class Child(Parent):
-
def hello(self):
-
print('我是子类与父类同名的方法')
-
-
c = Child()
-
c.hello() # 我是子类与父类同名的方法
-
-
#调用父类被覆盖的构造方法有两种方式,1、调用未绑定父类方法 2、使用super方法
-
# 1、调用未绑定父类方法 例子
-
class Person2:
-
def __init__(self):
-
a = 1+1
-
self.b = a
-
def getSelf(self):
-
-
print(self.b)
-
pass
-
class Child(Person2):
-
def __init__(self):
-
Person2.__init__(self) #在子类中用父类调用父类的构造方法,达到子类调用父类的构造方法功能。
-
self.c = '重写子类构造方法'
-
-
child = Child()
-
print(child.getSelf())
-
-
# 2、调用父类子类覆盖的构造方法 例子
-
class Person2:
-
def __init__(self):
-
a = 1+1
-
self.b = a
-
def getSelf(self):
-
-
print(self.b)
-
pass
-
class Child(Person2):
-
def __init__(self):
-
#Person2.__init__(self) #在子类中用父类调用父类的构造方法,达到子类调用父类的构造方法功能。
-
super().__init__() #super在子类中调用父类的构造方法,达到子类调用父类的构造方法功能。
-
self.c = '重写子类构造方法'
-
-
child = Child()
-
print(child.getSelf())
-
-
-
'''
-
多重继承
-
在子类的括号里写入多个父类的名字即可
-
-
'''
-
class Base1:
-
def base1(self):
-
print('我是base1')
-
class Base2:
-
def base2(self):
-
print('我是base2')
-
class Child(Base1,Base2):
-
pass
-
child2 = Child()
-
child2.base1()
-
child2.base2()
文章来源: brucelong.blog.csdn.net,作者:Bruce小鬼,版权归原作者所有,如需转载,请联系作者。
原文链接:brucelong.blog.csdn.net/article/details/80424416
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)