什么网站上公司的评价最客观,青州网站优化,包头网站网站建设,网站浮窗代码蓝鸥iOS培训讲师推荐#xff1a;好久没和大家沟通了#xff0c;没和大家沟通了#xff0c;今天就和大家说说有关OC内容协议和代理设计模式。首先要讲的是协议一、协议OC中的协议和接口有些相似#xff0c;协议中定义的方法#xff0c;在类中实现。协议一般情况下是用来实现… 蓝鸥iOS培训讲师推荐好久没和大家沟通了没和大家沟通了今天就和大家说说有关OC内容协议和代理设计模式。首先要讲的是协议一、协议OC中的协议和接口有些相似协议中定义的方法在类中实现。协议一般情况下是用来实现委托对象。委托对象一般用来自己定义行为或者动作也就是调用自己定义方法不过自己不实现该方法委托其它的类来实现该方法。1、协议的声明HelloProtocol.hrequired是缺省值是一定要实现的方法optional可选择的。协议只有一个.h文件本身不是类他是定义了一个其他类可实现的接口。2、协议的实现Person.hPerson.m3、用协议修饰变量1定义变量idMyProtocolNamemyNewVariable;那么myNewVatiable是遵循我们定制的这个MyProtocolName协议的。2定义函数-(void)doSomethingWithThisObject:(idMyprotocolName)aObject那么这个函数的参数是需要遵循我们定制的这个MyProtocolName协议的。二、代理委托设计模式代理指一个对象提供机会给另一个对象中的行为发生变化是做出的反应。基本思想是两个对象共同解决问题一般情况下用于对象之间的通信。代理设计模式的基本特点如下1、简化了对象的行为最小化了对象之间的耦合度。2、使用代理一般来说无需子类化。3、简化了我们应用程序开发既容易实现有灵活。例如A.hA.m委托对象的实现B.hB.m如果是这样A就可以委托B去做fun的事了。UIApplication类是一个非常典型的例子定义了一个应用程序应该有的行为/动作。而不是非常强制性的让你的UIApplication子类去接受当前应用程序的状态消息而作出相应处理。UIApplication通过调用特别方法将消息传给它的委托对象。那么该委托对象通过实现名为UIApplicationDelegate的协议到了后来就可以接受到当前应用程序的状态消息而做出相应处理。例如内存不够的错误应用程序被中断等重要消息。是不是看起来有点复杂啊不过其实理解起来一点也不太困难只要用心理解再加上沟通就不成问题了。 转载于:https://blog.51cto.com/laojiangboke/1327907