swift中的Self

2021-04-16  本文已影响0人  梁森的简书

方法内部使用Self

可以用于获取当前类的静态变量(不管是在实例方法里还是静态方法里)

协议中使用Self

1.可以限定遵守协议的数据类型
如果是类,那么该类及其子类都可以遵守该协议

protocol SelfProtocol where Self: UIViewController {
    func returnSelf() -> Self
}

上面的代码中UIViewController及其子类都可以遵守SelfProtocol
2.用于方法的返回值
只能返回方法调用者本身

extension SelfProtocol {
    func returnSelf() -> Self {
        return self
    }
}

上一篇 下一篇

猜你喜欢

热点阅读