开发者社区> 问答> 正文

2、关联对象的应用?系统如何实现关联对象的?

2、关联对象的应用?系统如何实现关联对象的?

展开
收起
游客bnlxddh3fwntw 2020-04-13 15:28:08 1159 0
1 条回答
写回答
取消 提交回答
  • 应用:

    可以在不改变类的源码的情况下,为类添加实例变量(注意:这里指的实例变量,并不是真正的属于类的实例变量,而是一个关联值变量)
    结合category使用,为类扩展存储属性。
    关联对象实现原理:

    关联对象的值实际上是通过AssociationsManager对象负责管理的,这个对象里有个AssociationsHashMap静态表,用来存储对象的关联值的,关于AssociationsHashMap存储的数据结构如下:

    AssociationsHashMap:

    ------添加属性对象的指针地址(key):ObjectAssociationMap(value:所有关联值对象)

    ObjectAssociationMap:

    ------关联值的key:关联值的value

    2020-04-13 15:28:30
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
对象的生命期管理 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载