0%

Python基础-- 私有和继承

Python基础– 私有和继承

python

父类中的私有属性和方法是不会被子类所继承的
可以通过调用父类的公有方法,进而调用私有属性和私有方法
除了上面的方法外可以直接使用超类super进行调用,这个可以参考我的上一批文章Python基础--重写

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
class Cat:
def __init__(self):
# 定义公有属性
self.type = "猫科"
# 定义私有属性
self.__color = "黄"

# 定义私有方法
def __eat(self):
print("吃猫粮")

# 创建子类
class Tiger(Cat):
def do(self):
# 调用公有属性
print(self.type)
# 调用私有属性
print(self.__color)

# 创建对象,并继承Cat父类属性
ahuang = Tiger()
# 调用自己的方法,但是里面回去调用Cat类的私有属性,提示报错
ahuang.do()
# 直接调用私有方法同样是会报错的
ahuang.__eat()