创建类时,何时需要使用init()?在
对于下面的代码,当我们创建PartTimeEmployee()类时,我们是否可以从Employee()类继承init()?还是我们应该重打一遍?在
我发现两种密码都有效:
class Employee(object):
def __init__(self, employee_name):
self.employee_name = employee_name
def calculate_wage(self, hours):
self.hours = hours
return hours * 20.00
class PartTimeEmployee(Employee):
def calculate_wage(self,hours):
self.hours = hours
return hours * 12.00
以及
^{pr2}$这里有什么最佳实践吗?在
否;
__init__
与其他方法一样是继承的。因此,当你超越它时,你必须采取特别的预防措施。例如,如果我们有一个Person
类:我们想要创建一个名为
^{pr2}$Employee
的新类,它扩展它以添加一个title
属性。我们可以在Person
构造函数中重复该逻辑:但是如果
Person
做了一些更复杂的事情,您可能不想这样做。相反,您需要使用super
显式调用超类的__init__
:但是在子类没有额外初始化的简单情况下,可以忽略
__init__
;它确实会从超类中适当地继承。在相关问题 更多 >
编程相关推荐