子类对象使用父类中数据
class Person:
def __init__(self, name, age, gender):
self.name = name
self._age = age
self.__gender = gender
def say(self):
print(self.name, "滚去学习")
def _play(self):
print(self.name, "滚去玩")
def __sleep(self):
print(self.name, "嗨什么嗨,滚去睡觉")
class Child(Person):
pass
c = Child("jerry", 18, "男")
print(c.name) # 对象访问父类中的属性
print(c._age) # 对象访问父类中的属性
# print(c.__gender) # 对象访问父类中的私有属性:ERROR
c.say() # 对象访问父类中的方法
c._play() # 对象访问父类中的方法
# c.__sleep() # 对象访问父类中的私有方法:ERROR
子类类型使用父类数据
-
子类中访问父类的方法
super().方法名称()
注意:访问属性时可能会出错。扩展为什么会出错? -
子类的__init__()方法
如果子类中不写__init__()方法,直接使用父类的__init__()方法初始化数据
怎么访问:如果子类中写了自己的__init__()方法,一定要调用执行父类的__init__()方法什么时候访问