zoukankan      html  css  js  c++  java
  • [置顶] Objective-C ,ios,iphone开发基础:protocol 协议(委托,代理)的声明

    协议是为了弥补Objective-c中类只能单继承的缺陷,在Objective-c2.0之前当一个类遵循一个协议的时候,必须在类中实现协议的所有方法,在Objective-c2.0之后协议中的方法就有关键字来区别那些方法是必须实现的,那些方法不是必须实现的,默认是不必须实现的@optional 修饰的方法是不必须实现的,@required修饰的方法必须实现,

    一般用的比较多的代理委托有UITextFieldDelegate,UITableViewDataSource,UITableViewDelegate等,

    而我根据自己的经验目前觉得使用自定义委托用的最多的时候就是网络请求数据的时候,把网络接口的方法放在委托当中,让接口类遵循这个委托,这样就实现了较好地封装性。

    声明协议可以单独放在一个文件中也可以和其他类放在同一个文件中。

    @protocol DisastersHttpDelegate <NSObject>


    @optional


    //根据灾情id获取需求列表。

    -(void)didGetDemandsListByDisasterId:(NSArray*)disasterIdArray;

    //获取需求类别

    -(void)didGetDemandCategories:(NSArray*)demandCategoryArray;


    @end


  • 相关阅读:
    正敲着代码,鼠标坏了!
    DB2 OLAP函数的使用(转)
    修剪矩形
    classpath和环境变量设置(转)
    MyEclipse断点调试JavaScript浅析(转)
    Onunload和onbeforeunload方法的异同
    db2中的coalesce函数(转)
    db2:根据TABLEID找table
    [转]DB2行列转换
    DB2删除数据时的小技巧
  • 原文地址:https://www.cnblogs.com/fuhaots2009/p/3433182.html
Copyright © 2011-2022 走看看