我目前正在测试关于初始化程序和继承的知识。但是,当我尝试在子类中重写超类的init函数时,抛出一个错误,指出“ Initializer不会从其超类中覆盖指定的初始化器”,希望大家能帮帮我!
class Employee {
var name = ""
var salary = 0
var role = ""
init() {
}
init(_ name:String) {
self.name = name
self.salary = 0
self.role = "Helpdesk"
}
func doWork() {
print("Currently working hard...")
salary += 1000
}
}
class Manager: Employee {
var teamSize = 0
var bonus:Int {
// this is a computed property
return teamSize * 1000
}
override init(_ name:String, _ team:Int) { // ERROR pops up here**********
super.init(name)
self.teamSize = team
}
override func doWork() {
super.doWork()
print("Currently managing people...")
}
}