11.私有方法
在类的.m文件中实现,而未在.h文件中声明的方法.只能在类的方法中通过self调用,不能在其他类中访问,包括子类.
12.description方法: NSLog(@"%@....", obj);
用于输出OC对象信息的方法,返回一个NSString字符串,可以自行构造
13.面向对象关系----"多态
不同对象响应同一消息所表现出来的多种不同形态称作"多态"
多态的"条件":1.有继承关系, 2.有方法的重写
OC中多态的表现形式:'父类指针指向子类的对象',通过父类的指针可以调用子类的方法,经过"指针的强转(类型必须对应)",还可以访问子类独有的方法,但是不能访问子类对象中没有的方法
14.OC的动态特性:
在编译时不检验对象所属的类型,在运行时才检查对象的实际类型的特性.
具体实现分为:"动态检查","动态绑定","动态加载"
15.id和instancetype区别
id是一个万能指针,可以指向任意的OC对象.id可以用来创建对象指针,也可以用作方法的返回值.但是作为返回值时,编译器不会检查返回对象的类型是否和接收指针类型一致
instancetype也可以指代任意的OC对象,但是instancetype只能用作方法的返回值.作返回值时,编译器会检查返回对象的类型是否和接收指针类型一致.如不一致,则报警告
16.类的本质
类的本质是一个Class类的对象.通过[类名 @class]或者[类对象名 @class]可以获取到这个类的类型
类对象存储在全局区的"数据区",而对象存储在"堆区"
17.SEL类型
OC数据类型之一,将一个OC方法包装成一个数据类型.用法:SEL s1 = @selector run;
18."点语法"的实质
点语法的实质,是将该语法转换为对应的setter/getter方法,用于给对象的实例变量赋值和取值
|
|