3

当我创建如下所示的父类和子类时,为什么父类的参数不会自动被子类拉入?

我知道显式更好,但我想知道这段代码在什么情况下......

class testParent(object):
    def __init__(self,testParentParam1,testParentParam2):
        pass


class testChild(testParent):
    def __init__(self,testParentParam1,testParentParam2,testChildParam1,testChildParam2):
        pass

比这段代码好...

class testParent(object):
    def __init__(self,testParentParam1,testParentParam2):
        pass


class testChild(testParent):
    def __init__(self,testChildParam1,testChildParam2):
        pass
4

1 回答 1

4

派生类扩展基类。这意味着他们可能在施工时需要更多/更少/不同的信息来进行扩展。考虑:

class BaseTextDocument(object):
    def __init__(self, content):
        self.content = content

class WordDocument(object):
    def __init__(self, path, word_version="guess_from_file"):
        content = parse_word_document(path, word_version)
        super(WordDocument, self).__init__(content)
于 2013-03-25T15:07:33.347 回答