擅长:python、mysql、java
<p>三件事:</p>
<ol>
<li>您需要显式调用构造函数。它不是自动调用的,如C++ < /LI>
<li>使用从对象继承的新样式类</li>
<li>对于新样式的类,使用可用的super()方法</li>
</ol>
<p>这看起来像:</p>
<pre><code>class Person(object):
AnotherName = 'Sue Ann'
def __init__(self):
super(Person, self).__init__()
self.FirstName = 'Tom'
self.LastName = 'Sneed'
def get_name(self):
return self.FirstName + ' ' + self.LastName
class Employee(Person):
def __init__(self):
super(Employee, self).__init__()
self.empnum = 'abc123'
def get_emp(self):
print self.AnotherName
return self.FirstName + ' ' + 'abc'
</code></pre>
<p>建议使用super,因为它还可以在多个继承情况下(只要继承图中的每个类也使用super)只正确地处理一次调用构造函数。如果/当您更改继承自类的内容时(例如,您将基类分解出来并更改派生,而不必担心您的类调用了错误的父构造函数),您还需要在这里少修改代码。同样在MI前端,只需要一个超级调用就可以正确调用所有基类构造函数。</p>