block和代理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/51242275

block和代理都可以用来传值,由于代理的代码量较大,写起来麻烦,所以现在大部分人会选择使用block来进行传值。这样显得代理好像没用了。实际代理的作用还是很大的,如果我们是在对控件进行封装这时就需要使用代理,因为代理更具有扩展性,可以在我们需要增加方法的时候轻松实现。

总之用block传值简单方便,用代理更具有扩展性。

18.1.25 更新:

看到网上有一种说法:如果回调方法少于3个使用block,反之使用代理。  block容易造成循环引用,从而导致内存泄漏(使用__weak避免循环引用)。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏猛牛哥的博客

升级php7.1.*后phpcms V9编辑文章出错的解决方法

4753
来自专栏mwangblog

python模块

1553
来自专栏决胜机器学习

Redis专题(四) ——Redis排序、消息队列、优化存储

Redis专题(四) ——Redis排序、消息队列、优化存储 (原创内容,转载请注明来源,谢谢) 一、排序 1、命令 SORTkey [A...

5598
来自专栏开源优测

[接口测试_B] 14 pytest+requests实战-参数化

上一篇在一个py文件中,写了一堆test_开头的方法,所有数据和用例都在一个py文件中,本篇尝试读取json文件的测试数据,执行用例。

1754
来自专栏决胜机器学习

PHP开发过程的那些坑(二) ——PHP empty函数

PHP开发过程的那些坑(二)——PHP empty函数 (原创内容,转载请注明来源,谢谢) 坑: 在工作过程中,常用empty()函数判断数组是否为空,为空时返...

3838
来自专栏武军超python专栏

2018年7月23日数据存储到文件中的代码介绍:

******************************************************************

1055
来自专栏Laoqi's Linux运维专列

for 循环,while循环,break,continue,exit

3728
来自专栏好好学java的技术栈

深入线程Thread类的start()方法和run()方法

java的线程是通过java.lang.Thread类来实现的。VM启动时会有一个由主方法所定义的线程。可以通过创建Thread的实例来创建新的线程。每个线程都...

1030
来自专栏不想当开发的产品不是好测试

生成唯一标识 字符串跟时间戳的结合

生成唯一标识 期望得到是一个时间戳跟字符串的组合, 采用 //这种是秒级的时间戳 Date date = new Date(); String.format...

3307
来自专栏Linyb极客之路

并发编程之volatile关键字

一、Java内存模型 想要理解volatile为什么能确保可见性,就要先理解Java中的内存模型是什么样的。 Java内存模型规定了所有的变量都存储在主内存中...

3555

扫码关注云+社区

领取腾讯云代金券