Runtime运行时
文章平均质量分 74
上进求知,认真思辨
17611006395
展开
-
iOS 开发 Runtime 运行时机制 完全解读
前言在最开始听到runtime的时候,我是感到恐惧的,多么高大上的东西啊!!!后来,开始在网上查一些资料,可是就是只有那么几篇,看了好久,还不知所云,所以就更加恐惧了!!!!后来经过查看documents 以及一些国外大牛的blogs,终于对runtime有了更深刻的了解!runtime实现的机制是什么runtime是一套比较底层的纯C语言API, 属于1个C语言库, 包含了很多底层的C语言API原创 2016-11-30 01:40:51 · 828 阅读 · 0 评论 -
iOS 开发 深入浅出Rumtime运行时之消息转发机制详解
在Objective-C中,使用对象进行方法调用是一个消息发送的过程(Objective-C采用“动态绑定机制”,所以所要调用的方法直到运行期才能确定)。点击这里查看 – 深入浅出Rumtime运行时之消息发送机制详解方法在调用时,系统会查看这个对象能否接收这个消息(查看这个类有没有这个方法,或者有没有实现这个方法。),如果不能并且只在不能的情况下,就会调用下面这几个方法,给你“补救”的机会,你可以原创 2016-12-03 23:08:48 · 1090 阅读 · 0 评论 -
iOS 开发 深入浅出Runtime运行时之方法动态处理(Dynamic Method Resolution)详解
前言在查看本篇博客之前请查看 iOS 开发 深入浅出Rumtime运行时之消息发送机制详解Object-C中向一个对象发送它无法处理的消息,会出现什么情况?我们知道发送消息是通过 objc_send(id, SEL, …) 来实现的,它会首 先在对象的类对象的 cache,method list 以及父类对象的 cache, method list 中依次查找 SEL 对应 的 IMP;如果原创 2016-12-03 17:51:45 · 1103 阅读 · 0 评论 -
iOS 开发 深入浅出Runtime运行时之官方翻译--动态方法处理
动态方法处理Dynamic Method ResolutionThis chapter describes how you can provide an implementation of a method dynamically.这一章描述了如何动态地提供一个方法的实现。Dynamic Method ResolutionThere are situations where you might wa原创 2016-12-03 20:43:16 · 764 阅读 · 0 评论 -
iOS 开发 深入浅出Runtime运行时之官方指南翻译--消息发送
苹果官方消息发送链接地址消息发送This chapter describes how the message expressions are converted into objc_msgSend function calls, and how you can refer to methods by name. It then explains how you can take advantage原创 2016-12-03 20:04:35 · 676 阅读 · 0 评论 -
iOS 开发 深入浅出Runtime运行时之官方指南翻译--与运行时交互
与运行时交互Interacting with the RuntimeObjective-C programs interact with the runtime system at three distinct levels: through Objective-C source code; through methods defined in the NSObject class of the F原创 2016-12-03 19:35:47 · 556 阅读 · 0 评论 -
iOS 开发 深入浅出Runtime运行时之官方指南翻译--runtime介绍
官方指南结构图runtime官方指南连接IntroductionThe Objective-C language defers as many decisions as it can from compile time and link time to runtime. Whenever possible, it does things dynamically. This means that th原创 2016-12-03 18:25:58 · 997 阅读 · 0 评论 -
iOS 开发 深入浅出Rumtime运行时之消息发送机制详解
在Objective-C中,使用对象进行方法调用是一个消息发送的过程(Objective-C采用“动态绑定机制”,所以所要调用的方法直到运行期才能确定)。方法在调用时,系统会查看这个对象能否接收这个消息(查看这个类有没有这个方法,或者有没有实现这个方法。),如果不能并且只在不能的情况下,就会调用下面这几个方法,给你“补救”的机会,你可以先理解为几套防止程序crash的备选方案,我们就是利用这几个方案原创 2016-12-03 17:02:38 · 3241 阅读 · 0 评论 -
iOS 开发 深入浅出Runtime运行时之类与对象的结构
class 与 object 的定义//类typedef struct objc_class *Class; //对象typedef struct objc_object { Class isa; } *id;Class 是一个 objc_class 结构类型的指针;id(任意对象)是一个 objc_object 结构类型的指针, 其第一个成员是一个 objc_class 结构类型的原创 2016-11-30 23:51:07 · 868 阅读 · 1 评论 -
iOS 开发 Runtime到底是什么?
Runtime到底是什么?这个问题一直以来都困扰着大家的,做iOS开发,天天和Object-c打交道,却对runtime到底是什么感觉到很费解?那么我们就先了解熟悉的东西:Object-C做iOS开发做的最基本的操作:类,对象,属性,方法,—无论你做什么功能都离开这四个最基本的东东,包括网络请求,代理协议,通知,block,多线程,KVC/KVO,内存管理等等.都是用哪个类创建哪个对象,修改类的属原创 2016-11-30 23:11:52 · 1575 阅读 · 0 评论 -
iOS 开发 Runtime.h / objc.h / message.h中的那些重要的声明
/* class类 / 使用Class代替struct objc_class * */typedef struct objc_class *Class;typedef struct objc_object { Class isa;} *id;struct objc_class { Class isa; Class super_class ; const cha原创 2016-12-01 21:01:08 · 1716 阅读 · 0 评论