OC :类与对象

2016-06-30  本文已影响0人  Zzzzzzz7

一、面向对象

面向对象以事物为中心,完成某件事都需要哪些事物来参与,参与该事件的事物都有哪些功能,完成该事件需要这些事物相互协作共同完成,并且完成该事件只是所有事物功能中其中的一个小功能。

二、类与对象的概念和区别

类:具有相同特征和行为的事物的抽象。

对象:对象是类的的实例,万事万物皆对象。

           类是对象的类型。

区分类与对象的黄金法则:当我们看到某个概念的时候脑中想到的是同一个事物的时候,此时就是对象;不然则为类。

三、对象的创建

1、分配内存空间

Teacher *teacher = [Teacher alloc];

2、初始化

teacaher = [teacher init];

以上两步一般合为一步

Teacher *teacher = [[Teacher alloc]init];

五、id与instancentype的区别

1、instancetype可以返回和方法所在类相同类型的对象,id只能返回未知类型的对象。

2、instancetype只能作为返回值和参数,但id还可以用来定义变量。

3、in􏰅􏰂tancet􏰂ype会告诉编译器当前的类型,但id对于编译器却是无类型的,调⽤任何⽅法不会给出错误提示。

4、ini􏰂t⽅法,id和in􏰅tance􏰂type是没有区别的。因为编译器会把id优化成int􏰅􏰂ancet􏰂ype。当明确返回的类型就是当前Cla􏰅􏰅ss时,使用int􏰅􏰂ancet􏰂ype能避免id带来的编译不出的错误情况。

上一篇 下一篇

猜你喜欢

热点阅读