年年有"余"

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1976|回复: 0

协议的基本使用

[复制链接]
  • TA的每日心情
    奋斗
    2022-12-13 21:26
  • 签到天数: 371 天

    [LV.9]以坛为家II

    发表于 2014-3-21 18:24:46 | 显示全部楼层 |阅读模式
    1、定义一个协议
            @protocol 协议名称
                    方法声明...
            @end

    2、如何遵守协议

            > 类遵守协议
            @interface 类名 : 父类名 <协议名>

            > 协议遵守协议
            @protocol 协议名称 <协议名称>        // 可以理解为协议的继承(类似类的继承)

    3、协议中方法声明的关键字
            @required        // 必须实现的方法
                    方法声明...
            @optional                // 可选方法
                    方法声明...

            默认为@required

    4、协议的使用场景:代理设计模式

            > 创建一个对象:NSObject * obj;如果要求该对象一定要遵守某个协议,则写成 类名<协议名> * 对象名 (如:Person <Protocol> * p)
            > 声明一个对象属性时同样可以使用该形式,如@property (nonatomic, strong) id<Protocol> obj;

    参考链接:协议(Protocol)与代理设计模式
    http://www.yusian.com/forum.php?mod=viewthread&tid=983&fromuid=3
    (出处: 小龙虾IT论坛)
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    手机版|小黑屋|Archiver|iOS开发笔记 ( 湘ICP备14010846号 )

    GMT+8, 2024-5-6 00:28 , Processed in 0.043933 second(s), 19 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表