swift中关于协议或接口的编程(protocol),POP的概念

1.swift中的协议都是继承与NSObjectProtocol协议的,如果不写上继承这个协议,你们声明的delegate无法写成weak类型

2.当你的协议的方法不是声明为optional的时候所有的协议里面的方法都必须被实现,除了一种情况,那就是你为协议提供协议扩展,你在extension中默认为那个方法提供实现,那么那个方法就可以不被实现。

3.面向接口编程

protocol XXX { }

extension XXX {
  func  xxx() {
    }
}

class A :XXX {
 

   //那么就直接可以调用接口里面的方法
   xxx()
}

面向接口编程的好处就是可以复用。
举个例子,比如你要添加一个提示窗口,其实很多界面都有,如果你在需要添加提示的窗口的类中实现这个接口,直接调用这个xxx()方法就好。

你可能感兴趣的:(swift中关于协议或接口的编程(protocol),POP的概念)