美文网首页
GeekBand OC 2. 类与对象

GeekBand OC 2. 类与对象

作者: robinn9810 | 来源:发表于2016-05-08 22:31 被阅读10次

    类型系统

    1. 引用类型:类(Class)

    2. 值类型

    3. 类型装饰

    1. 接口

    属性表达状态

    方法表达行为

    2. 类型与实例

    RPoint:类型

    rp1:实例(称为“对象”)

    alloc:请求动态内存分配

    init:初始化(默认为0)

    []:发送消息

    3. 结构(类似于C)

    自动定义内存大小(与创建对象不同)

    结构对应的实例称为“值”

    不同点:内存分配方式不同,sp1不能发消息,引用类型与值类型

    4. 对象的空间分析

    栈上存储指针

    指针指向的对象存储在堆上

    只能通过指针访问对象

    值的空间分析

    实例值直接存储于栈

    5. 栈(heap)堆(stack)

    栈(sp1):存储值类型(较为自动化)

    堆(rp1):存储引用类型对象(较为手动化)

    6. 拷贝行为:rp1,rp2指向同一个对象;改变rp2会同时改变rp1

    sp1,sp2是两个对象;改变rp2对rp1没有任何影响

    7. 传参行为:调用函数需要前置声明

    rp3和rp1指向同一个对象;改变rp3会同时改变rp1

    sp1,sp3是两个对象;改变sp3对sp1没有任何影响

    调用完成后process栈会被回收;回收后对rp1,sp1结果没有任何影响

    8. 内存模型的重要性

    相关文章

      网友评论

          本文标题:GeekBand OC 2. 类与对象

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