当非常多XXX.h 文件属性YY设计中,对外的设计是 YY(readonly) 时。外界便不能改动该属性, 同一时候问题也来了,该XXX类的内部也不能改动改YY属性了。你瞬间凌乱过么。。。Y_Y 然后就发现例如以下两种方法: 一:指针 永远不要小看指针的力量,在内部能够用 obj->_YY 的方式改 ...
分类:
移动开发 时间:
2017-04-27 10:25:44
阅读次数:
188
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { // 创建数组 NSArray *arr1 = nil; // NSLog(@"%p", arr1); NSObject *obj = [NSObj ...
分类:
编程语言 时间:
2017-04-19 09:18:03
阅读次数:
175
一,SEl和IMP到底是什么 SEL : 类成员方法的指针,但不同于C语言中的函数指针,函数指针直接保存了方法的地址,但SEL只是方法编号。IMP:一个函数指针,保存了方法的地址 IMP和SEL关系 每一个继承于NSObject的类都能自动获得runtime的支持。在这样的一个类中,有一个isa指针 ...
分类:
其他好文 时间:
2017-04-10 15:24:55
阅读次数:
215
OC中有两个特殊的类方法,分别是load和initialize。本文总结一下这两个方法的区别于联系、使用场景和注意事项。Demo可以在我的Github上找到——load和initialize,如果觉得有帮助还望点个关注以示支持,总结在文章末尾。 先来看看NSObject Class Referenc ...
分类:
其他好文 时间:
2017-04-10 12:29:50
阅读次数:
234
1. 对当前Run Loop中Selector Sources的取消 NSObject中的performSelector:withObject:afterDelay:方法将会在当前线程的Run Loop中根据afterDelay参数创建一个Timer,如果没有调用有inModes参数的方法,该Tim ...
分类:
其他好文 时间:
2017-03-30 19:25:07
阅读次数:
156
一个下载操作就交给一个HMDownloadOperation对象 HMDownloadOperation.h / .m @class HMDownloadOperation; @protocol HMDownloadOperationDelegate <NSObject> @optional - ( ...
分类:
移动开发 时间:
2017-03-23 15:53:33
阅读次数:
226
import @interface Person : NSObject { // 写在类声明的大括号中的变量, 我们称之为 成员变量(属性, 实例变量) // 成员变量只能通过对象来访问 // 注意: 成员变量不能离开类, 离开类之后就不是成员变量 \ 成员变量不能在定义的同时进行初始化 // 存储... ...
分类:
其他好文 时间:
2017-03-10 00:30:05
阅读次数:
167
对象方法: (1)对象方法的实现只能写在@implementation...@end中,对象方法的声明只能写在 @interface...@end中间 (2)对象方法都以-号开头,类方法都以+号开头 (3)对象方法只能由对象来调用,类方法只能由类来调用,不能当做函数一样调用 (4)函数属于整个文件, ...
分类:
其他好文 时间:
2017-03-10 00:10:44
阅读次数:
245
关于oc与js的交互,本人用的是原生类 JSExport 实现。 本人不擅长文字描述,故直接上代码 1,首先创建一个继承 NSObject的类,创建代理,实现代理方法,.h文件 在.m文件中实现代理方法,此中以自己的方法为例 3.在需要的webView中,我们这可以这样写 ...
分类:
Web程序 时间:
2017-03-07 12:44:34
阅读次数:
220
本章接着NSObject头文件解析 / 消息机制 / Runtime解读(一)写 给类添加属性: 其中有一个参数我们再在上一篇中提到过 typedef struct { const char *name; /**< The name of the attribute */ const char *v ...
分类:
其他好文 时间:
2017-02-21 10:46:12
阅读次数:
199