转《http://blog.sina.com.cn/s/blog_67f6d5850100kjme.html》
近日一直在设计一套应用类后来把Object-C基于协议方面的应用又深化了一下,现在分享给大家。
在实际应用中我们经常会用到需要接口的地方,那么Object-C的接口是如何应用的呢?我们举个例子
比如有两个类ClassA和ClassB,ClassA中有一个方法F1,ClassB中有一个方法F1,我们希望我们的TestClass这个类里面的一个方法Fx,根据情况又可以调用ClassA的方法又可以调用ClassB的方法,而且以后可能还会有ClassC和ClassD的出现,我们不希望老去修改TestClass的代码结构,那如何实现?
那我们就用Object-C的协议机制,建立一个协议(即通常的接口),然后让ClassA和ClassB分别实现这个接口,这样在TestClass中在创建这么一个接口变量就可以实现这种多重的调用了。
代码简略给出了啊,头文件等就按照标准规矩来就完了,不写那么多东西了,干货都是,呵呵
MyPTL.h
...
ClassA.h + .m
ClassA: NSObject <MyPTL>
{