swift继承和扩展

// inherit & extension 继承和扩展

 

//父类

class 车 {

    var 速度 = 0

    var 描述 :String {

        return "时速\(速度)公里每小时"

    }

    func 声响() {

        

    }

}

 

let 一辆车 = 车()

一辆车.描述

 

//子类继承父类

class 自行车: 车{

    var 有篮子 = false

}

 

let 一辆自行车 = 自行车()

一辆自行车.有篮子 = true

一辆自行车.速度 = 25

一辆自行车.描述

 

 

//子类的子类

class 情侣自行车:自行车{

    var 当前乘客数 = 0

}

 

let 一辆情侣自行车 = 情侣自行车()

一辆情侣自行车.速度 = 20

一辆情侣自行车.描述

 

 

//子类重载父类的方法

class 动车: 车{

    override func 声响() {

        println("嘟嘟嘟")

    }

}

 

let 一辆动车 = 动车()

一辆动车.声响()

 

 

//子类重载父类的计算属性

class 汽车:车{

    // override var 速度 = 60

    var 轮子数 = 0

    

    override var 描述:String{

        return super.描述 + ",有\(轮子数)个轮子"

    }

    override var 速度 :Int{

        didSet {

            if 速度 > 120 {

                println("警告:你超速了")

            }

        }

    }

}

 

let 一辆汽车 = 汽车()

一辆汽车.速度 = 121

一辆汽车.轮子数 = 4

一辆汽车.描述

 

//扩展  (相当于分类)

//已存在的类/结构体/枚举类型。通常用于

//1.源代码不可知的情况

//2.把复杂的类分解,提高可维护性

 

extension Double {

    var rmb: Double{

        return self * 0.0597

    }

}

31_4150.rmb

 

 

//整数自行平方

extension Int {

    mutating func 平方(){

        self *= self

    }

}

 

var 一个整数 = 1024

一个整数.平方()

一个整数

 

转载于:https://www.cnblogs.com/cxc-1314/p/4520741.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值