首页 > 解决方案 > 如果有的话,将一个类作为另一个类的子类与让子类使用父类的实例有什么区别?

问题描述

所以请多多包涵。

我在理解继承概念的某些方面时遇到了一些困难。

因此,我想知道,实现一个类(例如“Child”)作为另一个类的子类(例如“Parent”)与简单地让“Child”在其内部创建和利用“Parent”对象之间有什么区别?

例如,给定父类为:

class Parent:
    def __init__(self, arg):
        self.arg = arg

    def parent_method(self):
        print(self.arg)

制作和实现子类有什么区别:

class Child(Parent):
    def __init__(self, arg):
        super().__init__(arg)

Child('foo').parent_method()

相对:

class Child:
    def __init__(self, arg):
        self.parent = Parent(arg)

    def call_method(self):
        self.parent.parent_method()

Child('foo').call_method()

两者都简单地打印:

foo

这里唯一的区别是语法吗?我的意思是,在这里使用继承似乎更有效,但是我还缺少其他什么吗?

谢谢!

标签: pythonpython-3.xinheritanceinstance

解决方案


推荐阅读