//声明一个基类
class vehicle {
var maxPassenger : Int = 0
var manufacturer : String!
func description() -> String {
return "max passenger is \(maxPassenger) and manufacturer is \(manufacturer)"
}
init () {
maxPassenger = 2
manufacturer = "Designed By Weasley"
}
}
//声明子类
class Bicycle : vehicle {
var numberofWheels : 2
var maxSpeed : Double = 30
override init() {
super.init()
2
}
override func description() -> String {
//return "numberofWheels : \(numberofWheels) maxPassenger : \(maxPassenger) with maxSpeed : \(maxSpeed) manufacturer is \(manufacturer)"
return super.description() + ";" + "numberofWheels : \(numberofWheels) maxSpeed : \(maxSpeed)"
}
}
class LimitSpeedBicycle: Bicycle {
var maxSpeed : Double {
get {
return super.maxSpeed
}
set {
super.maxSpeed = min(maxSpeed,20)
}
}
}
var bicycle = Bicycle()
println(bicycle.description())
var limit = LimitSpeedBicycle()
limit.maxSpeed = 30
println(limit.maxSpeed)
class SpeedLevel: var level = 1
Double{
didSet{
level = Int(maxSpeed / 10) + 1
}
}
String {
super.description() + " level is \(level)"
}
}
var aBicycle = SpeedLevel()
aBicycle.maxSpeed = 40
println(aBicycle.description())
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。