在这个Python代码中,dog和animal类之间的关系是什么?
我在《艰苦学习Python》一书中找到了这段代码。我对在这个Python代码中,dog和animal类之间的关系是什么?,python,Python,我在《艰苦学习Python》一书中找到了这段代码。我对狗和动物之间的关系有疑问 是dog和animal两个类,并且dog是否从animal继承某些内容?在Python中,所有类都从对象类继承(直接或间接) 根据您发布的代码,类狗继承自类动物。然而,它可以有更多的属性(如绒毛)和自己的行为(如树皮),这不是所有动物所共有的 简而言之:狗是一种动物。但是,dog也有自己的属性和行为。类dog继承自类动物。这意味着类dog的任何对象都会获得animal类定义的所有属性和方法。类狗称为子类或继承类,而类
狗
和动物
之间的关系有疑问
是
dog
和animal
两个类,并且dog
是否从animal
继承某些内容?在Python中,所有类都从对象
类继承(直接或间接)
根据您发布的代码,类狗
继承自类动物
。然而,它可以有更多的属性(如绒毛)和自己的行为(如树皮),这不是所有动物所共有的
简而言之:
狗
是一种动物
。但是,dog
也有自己的属性和行为。类dog
继承自类动物。这意味着类dog
的任何对象都会获得animal
类定义的所有属性和方法。类狗
称为子类
或继承
类,而类动物
称为超类
或父类
类
通常,子类用于扩展类的功能。因此类dog
可以修改animal
的属性和/或功能和/或添加它自己的属性和/或功能。是的,它们都是类,是的,dog继承了animal的一切。严格地说,答案的第一句话是不正确的(除非我们特别谈论Python 3)。另外,Python是区分大小写的,object
用小写的o
@NPE拼写。我编辑了我的答案,说所有的类都直接或间接地继承自object。不确定编辑没有反映的原因。我会更新一次again@PrahaladDeshpande这仍然不是事实。Python2中的旧式类不是从对象继承的。注意:强烈建议您将类名大写。参见pep8:这是一种继承关系dog
继承了animal
的所有属性和方法,也就是说没有。
class animal(object):
pass
class dog(animal):
def __init__(self):
print "I got called"