年年有"余"

 找回密码
 立即注册

QQ登录

只需一步,快速开始

楼主: Sian

[新浪微博] ios实战开发之仿新浪微博(第二讲:主框架搭建)

  [复制链接]
  • TA的每日心情
    高兴
    2015-10-10 10:21
  • 签到天数: 44 天

    [LV.5]常住居民I

    发表于 2015-6-15 16:18:30 | 显示全部楼层
    继续学习,感谢楼主分享
  • TA的每日心情
    高兴
    2015-10-10 10:21
  • 签到天数: 44 天

    [LV.5]常住居民I

    发表于 2015-6-18 13:45:28 | 显示全部楼层
    请问楼主,UIBarButtonItem分类实现中,实例方法是否合理?因为类方法已经alloc了一个实例对象,但是实例方法中没有用到这个新alloc的实例,而是又再函数中重新创建了一个实例?
  • TA的每日心情
    奋斗
    2022-12-13 21:26
  • 签到天数: 371 天

    [LV.9]以坛为家II

     楼主| 发表于 2015-6-18 16:41:51 | 显示全部楼层
    Miul 发表于 2015-6-18 13:45
    请问楼主,UIBarButtonItem分类实现中,实例方法是否合理?因为类方法已经alloc了一个实例对象,但是实例方 ...

    分类只是对UIBarButtonItem进行了一次封装,分类自身并不创建实例,实例还是UIBarButtonItem创建的。
    打个比方,分类中方法A调用原主类的方法B和方法C,那么你调用分类的A方法,和你调用B和C是一样的效果。alloc方法也只是一个普通的方法,只是他做的事情特殊一点,不知道这样说你能否明白?
  • TA的每日心情
    奋斗
    2022-12-13 21:26
  • 签到天数: 371 天

    [LV.9]以坛为家II

     楼主| 发表于 2015-6-18 16:44:01 | 显示全部楼层
    Miul 发表于 2015-6-18 13:45
    请问楼主,UIBarButtonItem分类实现中,实例方法是否合理?因为类方法已经alloc了一个实例对象,但是实例方 ...

    不会两次alloc哦,分类方法实现中带alloc的都是类方法。
  • TA的每日心情
    高兴
    2015-10-10 10:21
  • 签到天数: 44 天

    [LV.5]常住居民I

    发表于 2015-6-19 13:47:35 | 显示全部楼层
    Sian 发表于 2015-6-18 16:44
    不会两次alloc哦,分类方法实现中带alloc的都是类方法。

    楼主,可能我表达的不是很清楚。我的问题是这样的。在UIBarButtonItem+SA这个分类中,你实现了两个方法,一个类方法,一个实例方法。在类方法中alloc了一个对象,然后调用实例方法。而在你实现的这个实例方法中,你并没有用到类方法中alloc的这个实例,而是在实例方法中又重新alloc了一个实例并返回。我想问的是这样写是否合理?如果合理,那类方法中实例的对象,岂不是没有用到吗?谢谢解答。
  • TA的每日心情
    奋斗
    2022-12-13 21:26
  • 签到天数: 371 天

    [LV.9]以坛为家II

     楼主| 发表于 2015-6-19 17:15:39 | 显示全部楼层
    本帖最后由 Sian 于 2015-6-19 17:17 编辑
    Miul 发表于 2015-6-19 13:47
    楼主,可能我表达的不是很清楚。我的问题是这样的。在UIBarButtonItem+SA这个分类中,你实现了两个方法, ...
    首先,你必须要搞清楚的是,不管分类还是原始类(为区分分类你应该能看懂),不管你写多少个方法都只是定义,如果不调用,方法写与不写其实没什么两样,此外,分类中不管写多少方法最终都是调用了原始类来执行,你可以当作分类中的所有方法都只是快捷方式而已。为什么这么说呢,突破点在于分类中所用到的self,指的不是UIBarButtonItem+SA,而是指UIBarButtonItem,这就是分类的特殊性。

    如果是类方法,self指的就是UIBarButtonItem这个类,如果是实例方法,self指是就是调用该分类方法的对象本身。


    你要记住,UIBarButtonItem+SA这个类其实并不存在,这是分类与继承的区别。

    该用户从未签到

    发表于 2015-7-2 16:34:09 | 显示全部楼层
    谢谢楼主 学习了

    该用户从未签到

    发表于 2015-7-12 21:19:46 | 显示全部楼层
    看了弟一讲,那注释写得真叫专业啊

    该用户从未签到

    发表于 2015-7-20 14:50:32 | 显示全部楼层
    谢谢,不错
    回复

    使用道具 举报

    该用户从未签到

    发表于 2015-7-23 11:47:48 | 显示全部楼层
    mark mark mark mark mark
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    手机版|小黑屋|Archiver|iOS开发笔记 ( 湘ICP备14010846号 )

    GMT+8, 2024-3-29 15:34 , Processed in 0.045008 second(s), 17 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表