美文网首页iOS基础学习
Objective-C基础学习之对象的存储细节

Objective-C基础学习之对象的存储细节

作者: WenJim | 来源:发表于2017-08-29 11:55 被阅读7次

    1.对象的存储细节

    • 类创建对象,每个对象在内存中都占据一定的存储空间,每个对象都有一份属于自己的单独的成员变量,所有的对象公用类的成员方法,方法在整个内存中只有一份,类本身在内存中占据一份存储空间,类的方法存储于此。
    对象存储的过程.png

    2.isa指针

    • 每一个对象都包含一个isa指针.这个指针指向当前对象所属的类。
    • [p eat];表示给p所指向的对象发送一条eat消息,调用对象的eat方法,此时对象会顺着内部的isa指针找到存 储于类中的方法,执行。
    • isa是对象中的隐藏指针,指向创建这个对象的类。
    • 通过isa指针我们可以在运行的时候知道当前对象是属于那个Class(类)的
    isa指针的作用.png

    3.使用一个类创建多个对象

        Person * p = [Person new];
        p->_age = 27;
        p->_height = 1.75;
        p->_weight = 73.0;
    
       Person * p2 = [Person new];
        p2->_age = 26;
        p2->_height = 1.72;
        p2->_weight = 75.0;
    
    一个类创建多个对象.png

    相关文章

      网友评论

        本文标题:Objective-C基础学习之对象的存储细节

        本文链接:https://www.haomeiwen.com/subject/ocdodxtx.html