美文网首页
swift中的协议

swift中的协议

作者: 梁森的简书 | 来源:发表于2020-09-14 10:35 被阅读0次
    0.协议.jpg

    static、class

    协议中的类型方法、类型属性必须使用static定义

    mutating

    协议中的方法前加了mutating,遵守该协议的类实现协议中的方法时不用加mutating,而枚举、结构体需要加mutating。
    protocol中的方法用mutating修饰,我们在实现该方法的时候在该方法内部就可以修改变自己的变量了。

    协议的继承

    一个协议可以继承其他协议

    协议的组合

    可以同时遵守多个协议

    协议扩展

    在协议扩展中实现协议中的某些方法,那么这些方法就是不必被遵守者实现的。

    使用weak修饰代理

    如果我们想要用weak修饰代理,那么这个代理必须是只能被类实现的,因为struct和enum是不需用weak修饰代理的。
    为编译器显式地指明某个protocol只能由class来实现(加上class)。

    protocol MyClassDelegate: class {
     func method() 
    }
    

    相关文章

      网友评论

          本文标题:swift中的协议

          本文链接:https://www.haomeiwen.com/subject/sssbektx.html