码迷,mamicode.com
首页 > 编程语言 > 详细

Swift中扩展的使用

时间:2016-02-15 10:44:05      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:

import Foundation

/*
扩展
1.使用扩展添加属性, 方法, 可变方法, 构造器, 下标, 嵌套类型
2.可以使一个已有类型符合一个或者多个协议
3.扩展与OC的Category类似
4.扩展并不是派生子类, 因此不支持重写
*/

/*
[修饰符] extension 已有类型 { // 添加新功能 }
修饰符可以省略, 或者是private, internal, public其中之一,
类型可以是枚举, 结构体和类其中之一

注意: 通过扩展为已有类型添加了新功能, 那个新功能在该类型的所有已有实例中都是可用的
*/

/*
通过扩展让已有的类型遵守一个或者多个协议
语法格式:
[修饰符] extension 已有类型: 协议1, 协议2 { // 添加新功能 }
*/

extension String
{
    // 扩展一个计算属性
    var length: Int {
        get {
            return self.characters.count
        }
    }
    
    // 扩展一个构造器
    init(str: String)
    {
        self = str
    }
    
    // 扩展一个方法
    func getlength() -> Int
    {
        return self.characters.count
    }
    
    // 扩展一个静态方法
    static func show() -> Void
    {
        print("I‘m String")
    }
}

var str: String = "Rinpe"
var str2 = String(str: "Lala")

print(str.length)
print(str.getlength())
print(String.show())
print(str2)

Swift中扩展的使用

标签:

原文地址:http://www.cnblogs.com/Rinpe/p/5190029.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!