我正在尝试学习Swift中的继承概念,并提出了以下代码。我在子类中修改变量“numberOfWheels”没有问题,但是当我尝试在子类中修改变量“description”时,Xcode显示错误:
cannot assign to property "description" is a get only property
因为我对Swift比较新,所以我无法解决这个问题?有人可以请我提供一个如何解决这个问题的代码示例吗?非常感谢您的帮助!
class Vehicle{
var numberOfWheels = 0
var description: String{
return "\(numberOfWheels) wheels"
}
}
class Bicycle: Vehicle {
override init(){
super.init()
numberOfWheels = 2
description = "\(numberOfWheels) wheels, more is good"
}
}
答案 0 :(得分:1)
description
是只读计算属性,因此无法直接分配给。它通常用于为实现CustomStringConveritble
的类提供字符串转换以进行打印。如果您真的想要覆盖子类中的description
,则应按如下方式执行:
override var decsription: String {
return "\(numberOfWheels) wheels, more is good"
}