swift中关于协议或接口的编程(protocol),POP的概
2018-02-25 本文已影响0人
狒狒James_Leo
1.swift中的协议都是继承与NSObjectProtocol协议的,如果不写上继承这个协议,你们声明的delegate无法写成weak类型
2.当你的协议的方法不是声明为optional的时候所有的协议里面的方法都必须被实现,除了一种情况,那就是你为协议提供协议扩展,你在extension中默认为那个方法提供实现,那么那个方法就可以不被实现。
3.面向接口编程
protocol XXX { }
extension XXX {
func xxx() {
}
}
class A :XXX {
//那么就直接可以调用接口里面的方法
xxx()
}
面向接口编程的好处就是可以复用。
举个例子,比如你要添加一个提示窗口,其实很多界面都有,如果你在需要添加提示的窗口的类中实现这个接口,直接调用这个xxx()方法就好。