高级一点的语法思想

1.编译的时候报错,但是没有提示,说明肯定是链接报错的了。

2.Xcode是将项目中的.m文件一起编译和链接的。

3.统一的一类方法使用 - 隔开,分成一个组

4.当独的注释一个方法的时候,就不要使用 - 了,#pragma mark xx方法

5.!感叹号,是标示链接的错误

6..点语法的本质,还是方法调用,相当于setAge:10 p.age = 10;或者是 [p age]; p.age;

7..语法注意调用的问题,不发生死循环

8.@public 在任何地方都能直接访问对象的成员变量

@private 只能在当前类的对象方法中直接访问

@protected 可以在当前类及其子类的对象方法中直接访问(默认是@protected)

@package 只要处在同一个框架中,就能直接访问对象的成员变量

9. .m中的私有成员变量名不能与声明部分的成员变量同名

10.OC是单继承,只能有一个父类,C++有多继承,多个父类,父类中的所有成员变量,子类中都会有

11.@property 可以自动生成某个成员变量的setter和getter方法的声明

12.编译器是最笨的,你怎么写它就怎么生成方法

13.@synthesize 自动生成age的setter和getter实现,并且会访问_age这个成员变量

@synthesize age = _age;如果不存在成员变量,会自动生成@private类型的_age变量,默认情况下会访问age和它名字一样的成员变量。

14.Xcode会按照我们的方法,我们声明的方法,检查有,他就不会生成了

15.继承是重写,属性的setter,gertter也能重写

16.id 万能指针,只适用于oc对象

17.完整地创建一个可用的对象

1>分配存储空间,+alloc

2>初始化 -init

18.构造方法:重写init方法,给赋值

1>一定要调用super的init方法,初始化父类中声明的一些成员变量和其他属性

2>如果对象初始化成功,才有必要接下来的初始化

3>返回一个已经初始化完毕的对象

19.自定义构造方法:

1>一定是对象方法,一定以 - 开头

2>返回值一般是id类型

3>方法名一般以init开头

20.分类,类别,类目,Category,给某一个类扩充一些方法,不修改原来类的代码

21.类扩展:

22.分类是的实现方法中可以访问类的成员变量。

23.分类的优先级最高,现在分类中查找,然后再去原来类中找,最后到父类中去找

24.分类只能增加方法,不能增加成员变量;分类方法实现中可以访问原来类中的声明的成员变量;分类可以重新实现原来类中的方法,但是会覆盖掉原来的方法,会导致原来的方法没法再使用;方法调用的优先级,分类(最后参与编译的分类优先)->原来类->父类

25.- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapWidth; //意思就是用来创建一个内容可拉伸,而边角不拉伸的图片,需要两个参数,第一个是左边不拉伸区域的宽度,第二个参数是上面不拉伸的高度。那么接下来的一个像素会被拉伸。例如,leftCapHeight为6,topCapHeight为8。那么,图片左边的6个像素,上边的8个像素。不会被拉伸,而左边的第7个像素,上边的第9个像素这一块区域将会被拉伸。剩余的部分也不会被拉伸。

26.类的本质也是一个对象

27.类的加载,+load;程序已启动分类和类都会加载进内存,分类优先加载类的方法,只会执行一次;当第一次使用某个类时,就会调用当前类的+initialize方法。

28.不要在description方法中执行输出语句,会死循环

29.-(NSString *)description方法决定了实例对象的输出语句,+(NSString *)description方法决定了类对象的输出结果

30.SEL把test2包装成SEL类型的数据,根据SEL数据找到对应的方法地址,根据方法地址调用对应的方法。

31.performSelector:@selector(test2)];调用方法的2种方式

32.当只知道一个方法名的字符串,也可以调用这个方法,NSString *name = @"test2";SEL s = NSSelectorFromString(name); [p performSelector:s];

33._cmd 代表当前方法,SEL类型的数据,这样调用方法是很耗性能的,运行时就可以直接把方法名拿过来调用,其实发消息就是SEL

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容

  • 大纲 0.OC数据类型 1.声明一个类 2.实现一个类 3.创建一个对象 4.对象的注意点 5.对象方法 6.类方...
    天天想念阅读 1,113评论 0 3
  • 转至元数据结尾创建: 董潇伟,最新修改于: 十二月 23, 2016 转至元数据起始第一章:isa和Class一....
    40c0490e5268阅读 1,678评论 0 9
  • Objective-C 1. import的用法 拷贝文件内容可以自动防止文件的内容被重复拷贝(#define宏定...
    马文涛阅读 5,326评论 3 17
  • 1. 使用 #import 相对c的 include 是防止头文件的重复导入 2. NSLog 相对于 print...
    迎风起飞的猪阅读 1,708评论 6 9
  • 重点掌握 3 类对象和方法 对象就是一个物体 类的独特存在就是一个实例,对实例进行操作叫做方法。方法可以应用于类或...
    Coder大雄阅读 1,254评论 0 2