黑马程序员技术交流社区

标题: OC基础(三) [打印本页]

作者: zcj417311802    时间: 2016-1-14 15:43
标题: OC基础(三)
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方法,用于给对象的实例变量赋值和取值





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2