【问题标题】:How to ensure the child class can't access the parent's class method outside of the class? [duplicate]如何保证子类不能在类外访问父类的方法? [复制]
【发布时间】:2020-12-05 23:26:14
【问题描述】:

我有一个包含一些简单方法的类,我想创建一个基于这些方法并添加更多功能的子类。

所以,我从这个类继承,并在我的子类中建立父类中的简单方法。

现在,如何确保您不能从类外部的子类实例调用父类中的(简单)方法?我希望父类用于简单的方法,子类用于更复杂的方法。

【问题讨论】:

标签: python python-3.x class oop


【解决方案1】:

Python 的理念是“我们都是自愿的成年人”。如果一个类有一个方法,那么可以在该类的任何对象或该类的子类的任何对象上调用该方法。因此,您所问的实际上是不可能的。

还有一些你可以做的。如果您在父类上有一个方法,您可以在子类上覆盖该方法并让它什么都不做。这样,创建子类的实例并调用其中一个父类方法将改为调用您编写的重写方法,而实际上不会做任何事情。但是,我会考虑上述不良做法;绝对不推荐。

【讨论】:

    猜你喜欢
    • 2014-10-04
    • 1970-01-01
    • 2018-06-30
    • 2020-06-02
    • 1970-01-01
    • 1970-01-01
    • 2021-07-09
    • 2017-07-15
    相关资源
    最近更新 更多