python 继承 私有成员
时间: 2023-06-29 07:04:49 浏览: 61
在 Python 中,类的私有成员以双下划线 `__` 开头。私有成员只能在类的内部使用,无法在类的外部直接访问。如果子类想要访问父类的私有成员,可以通过继承和调用父类的方法来实现。
例如,我们定义一个父类 `Parent`,其中包含私有成员 `__name` 和公有成员 `age`:
```
class Parent:
def __init__(self, name, age):
self.__name = name
self.age = age
def get_name(self):
return self.__name
```
然后我们定义一个子类 `Child`,并且在子类中调用父类的 `get_name()` 方法来获取父类的私有成员 `__name`:
```
class Child(Parent):
def __init__(self, name, age, grade):
super().__init__(name, age)
self.grade = grade
def get_parent_name(self):
return super().get_name()
```
在 `Child` 类中,我们通过 `super().__init__(name, age)` 调用了父类 `Parent` 的构造方法,同时在子类中定义了一个公有方法 `get_parent_name()`,该方法通过 `super().get_name()` 调用了父类 `Parent` 的 `get_name()` 方法,从而获取父类的私有成员 `__name`。
使用这种方式,子类就能够访问父类的私有成员了。但需要注意的是,这种方式并不是直接访问父类的私有成员,而是通过调用父类的方法来获取私有成员的值。