zoukankan      html  css  js  c++  java
  • 协议代理

    设计模式:

    为什么要设计模式:帮助我们快速的健壮的开发程序 (解决某个实际的问题)

    Protocl协议:相当于Java里面的接口  提供一系列方法 不需要实现  谁服从谁实现

    如果需要使用某个协议提供的方法,就需要使用方法的这个类去服从协议 <>服从  协议可以服从多个协议<a,b>

    声明协议的方法:

    类服从协议:

    代理实现租房:

    代理实现数据回调:

    1.定义一套协议

    2.定义一个属性变量记录服从协议的对象

    3.实现功能返回数据

    调用者:

    1.服从协议

    3.创建对象 设置代理

    2.实现协议里的方法

    delegate中存在的问题:

    1.@class 前向申明一个类.h 在具体使用这个类的地方需要导入头文件.m

        什么时候一定要用@class,在两个类A、B的头文件中,A导入B B导入A中导致循环引用

    2.导入协议时要用import

    导入协议的时候,如果使用@class 只是申明有这个类,但无法获知这个类里面到底有什么东西,如果需要获取类里面具体的内容 就必须使用import

    3.对nil进行操作 只会不执行 不会报错,所以一定要记得设置代理人

    如果释放一个对象 那么立刻将这个对象赋值为nil

    4.属性变量delegate用assign修饰

    不用strong防止循环引用 某些情况可以用strong   但不能是copy 

    代理配置数据:

  • 相关阅读:
    Python全栈_Day3_网络基础
    Python全栈_Day2_操作系统基础
    Python全栈_Day1_计算机硬件
    NX二次开发-以指定字符分割字符串
    NX二次开发-获取当前项目路径
    NX二次开发-根据文件名删除文件
    NX二次开发-写入信息窗口
    NX二次开发-读文件
    NX二次开发-获取NX里的对象信息
    NX二次开发-菜单
  • 原文地址:https://www.cnblogs.com/kinghyt/p/11265400.html
Copyright © 2011-2022 走看看