黑马程序员技术交流社区

标题: iOS应用开发:简单理解类的本质 [打印本页]

作者: 俞帅明    时间: 2014-3-13 22:56
标题: iOS应用开发:简单理解类的本质

类是一个对象是Class类型的对象简称类对象,一个任意的类型,表示一个Objective-C类,类名就代表着类对象,每个类只有一个类对象。

  1.类也是个对象

  类是一个对象是Class类型的对象简称类对象

  Class类型的定义

  // 一个任意的类型,表示一个Objective-C类 typedef struct objc_class *Class;

  类名就代表着类对象,每个类只有一个类对象

  获取类对象

  // 获取类对象两种方式person1 和 person2 Class person1 = [Person class]; Person *p = [Person new]; Class person2 = [p class]; // 类对象调用类方法 Person *person3 = [person1 new];

  2.类的加载方法和初始化方法

  + (void)load; // 在类加载的时候调用一次 + (void)initialize; // 在使用某个类的时候调用一次

  +load方法:

  在程序启动的时候会加载所有的类和分类,并且自动调用所有类和分类的+load方法

  程序启动先加载父类然后是子类,也就是先调用父类的+load方法再调用子类的+load方法

  先加载原始类再加载分类

  不管程序运行有没有用到这个类,都会调用+load加载

  +initialize方法:

  在第一次使用某个类时比如创建对象,都会调用一次+initialize方法

  一个类只会调用一次+initialize方法,先调用父类再调用子类的initialize方法

原文链接:http://dev.yesky.com/415/36363915.shtml



作者: baby14    时间: 2018-9-28 08:00
多谢分享




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