Swift继承

前端之家收集整理的这篇文章主要介绍了Swift继承前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

//声明一个基类

class vehicle {

var maxPassenger : Int = 0

var manufacturer : String!

func description() -> String {

return "max passenger is \(@H_502_39@maxPassenger) and manufacturer is \(@H_502_39@manufacturer)"

}

init () {

maxPassenger = 2

@H_502_39@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 : \(@H_502_39@numberofWheels) maxSpeed : \(@H_502_39@maxSpeed)"

}

}



class LimitSpeedBicycle: Bicycle {

var maxSpeed : Double {

get {

return super.@H_502_39@maxSpeed

}

set {

super.@H_502_39@maxSpeed = min(@H_502_39@maxSpeed,20)

}

}

}

var bicycle = @H_502_39@Bicycle()

println(@H_502_39@bicycle.description())


var limit = LimitSpeedBicycle()

limit.maxSpeed = 30

println(limit.maxSpeed)



class SpeedLevel: var level = 1

Double{

didSet{

@H_502_39@level = Int(@H_502_39@maxSpeed / 10) + 1

}

}

String {

super.description() + " level is \(@H_502_39@level)"

}

}

var aBicycle = @H_502_39@SpeedLevel()

aBicycle.maxSpeed = 40

println(@H_502_39@aBicycle.description())

猜你在找的Swift相关文章