Swift 类型属性

类型属性:属于类型固有的,实例不能调用 static class 一般用static
对于类,计算型的类型属性,前面加关键字class可被子类重写 override
override 忽略重载 忽略父类中相同的属性

class 生命体 {
    static var 遗传方式 : String {
        return "RNA"
    }
}

class 生命体2 {
    class var 遗传方式 : String {
        return "RNA"
    }
}

class 生命体3 {
    static let 遗传方式 = "RNA"
}

生命体3.遗传方式

class Human : 生命体2 {
   override class var 遗传方式 : String {
        return "DNA"
    }
}

Human.遗传方式

// 结构体和枚举 关键字 static

struct 逛街 {
    static let 试衣间 = "UNICIO"
    static let 网站 = "http://www.taobao.com?cate="
    var cate = ""
    var shareUrl : String {
        return 逛街.网站 + cate
    }
}
逛街.试衣间
逛街.网站
let 逛淘宝 = 逛街(cate:"seafood")
逛淘宝.shareUrl

struct 网站 {
    static let 网址 = "http://www.taobao.com?cate="
    static let 类型 = "购物"
    var cate = ""
    var detailUrl : String {
        return 网站.网址 + cate
    }
    
}

网站.网址
网站.类型

let 淘宝购物 = 网站(cate:"seafood")
淘宝购物.detailUrl


你可能感兴趣的:(Swift 类型属性)