1. 通知中心认识 通知中心实际上是在程序内部提供了消息广播的一种机制。通知中心不能在进程间进行通信,它只能进行程序内部通信,不能跨应用程序进程通信。通知中心,当通知中心接受到消息后会根据设置,根据内部的一个消息转发表,将消息转发给订阅者。通知中心是基于观察者模式的,它允许注册、删除观察者。通知中....
分类:
移动开发 时间:
2016-01-08 23:33:18
阅读次数:
184
消息转发是OC运行时比较重要的特性,Objective-C运行时的主要的任务是负责消息分发,我们在开发中"unrecognized selector sent to instance xx",实例对象没有实现对应的消息,通常我们只需要实现未实现的方法即可。一般情况我们处理一个方法,运行时寻找匹配的s...
分类:
移动开发 时间:
2016-01-02 22:30:32
阅读次数:
201
Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理。这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一个方法的实现等。这种特性意味着Objective-C不仅需要一个编译器,还需要一个运行时系统来执行编...
分类:
其他好文 时间:
2015-12-20 12:57:15
阅读次数:
153
1.代理模式一句话总结:为其他对象提供一种代理以控制对这个对象的访问。千篇一律的介绍:代理模式是常用的java设计模式,他的特征是代理类与委托类(或目标类)有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理...
分类:
其他好文 时间:
2015-12-19 17:45:54
阅读次数:
224
信息技术社团的同学来自各个班级,为了增加友谊,我们在课余时间进行了一个消息转发游戏,如果a认识b,那么a收到某个消息,就会把这个消息传给b,以及所有a认识的人。如果a认识b,b不一定认识a。所有人从1到n编号,给出所有“认识”关系,问如果i号同学发布一条新消息,那么会不会经过若干次转发后,这个消息又...
分类:
其他好文 时间:
2015-12-12 11:06:27
阅读次数:
132
1.消息机制RunTime简称运行时。就是系统在运行的时候的一些机制,其中最主要的是消息机制。对于C语言,函数的调用在编译的时候会决定调用哪个函数( C语言的函数调用请看这里 )。编译完成之后直接顺序执行,无任何二义性。OC的函数调用成为消息发送。属于动态调用过程。在编译的时候并不能决定真正调用哪个...
分类:
移动开发 时间:
2015-12-09 13:25:47
阅读次数:
194
类和对象Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理。这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一个方法的实现等。这种特性意味着Objective-C不仅需要一个编译器,还需要一个运行时系统...
分类:
其他好文 时间:
2015-12-02 22:43:01
阅读次数:
255
Objective-C 扩展了 C 语言,并加入了面向对象特性和 Smalltalk 式的消息传递机制。而这个扩展的核心是一个用 C 和 编译语言 写的 Runtime 库。它是 Objective-C 面向对象和动态机制的基石。Objective-C 是一个动态语言,这意味着它不仅需要一个编译器,...
分类:
其他好文 时间:
2015-12-01 20:58:02
阅读次数:
121
引言简介与Runtime交互Runtime术语消息动态方法解析消息转发健壮的实例变量(Non Fragile ivars)Objective-C Associated ObjectsMethod Swizzling总结引言曾经觉得Objc特别方便上手,面对着 Cocoa 中大量 API,只知道简单的...
分类:
其他好文 时间:
2015-11-08 20:49:03
阅读次数:
362
Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时做的事放到了运行时来处理。同时OC也是一门简单的语言,很大一部分是C的内容,只是在语言层面上加了关键字和语法,真正让OC强大的是它的运行时,它很小却很强大,其中核心是消息分发。这种动态语言的优势在于:我们写代码时更加灵活,如我们可以把消息转发给我们想要的对象,或者随意交换一个方法的实现。
这种特性意味着OC不仅需要...
分类:
其他好文 时间:
2015-10-28 01:36:17
阅读次数:
136