美文网首页
iOS 说说+(类方法)-(实例方法)

iOS 说说+(类方法)-(实例方法)

作者: 师景福 | 来源:发表于2024-06-18 14:19 被阅读0次

    类方法

    1、self指的是Class
    2、可直接通过类名调用
    3、在程序开始时生成,方法是连续的空间,速度快,但占内存
    4、只能方法成员变量,无法访问或修改本类的实例变量
    5、用于实现工具方法,类似对某个对象的扩展,或者实现单例
    例子:label拓展中的方法/*快速设置label属性/

    • (UILabel *)labelWithTextColor:(UIColor *)textColor font:(CGFloat)textFont backgroundColor:(UIColor *)backColor Text:(NSString *)text;
      对上面的方法可以理解为我们类方法中我们创建label,对label赋予我们传的属性,返回一个特定的label;


      截屏2024-06-18 11.16.56.png

    实例方法

    1、self指的是对象的首地址
    2、必须通过alloc实例后才能调用
    3、在程序运行中生成,方法是离散的空间
    4、速度较类方法更慢一点
    5、与本类相关实例相关
    例子:label拓展中的方法/*设置label字间距/

    • (void)setColumnSpace:(CGFloat)columnSpace;
      对于上面的方法可以理解为我们对拓展中的label(指的是self)进行属性的设置;
      举个简单形象的例子进行简化理解:
      我们盖了好多房子(创建app),在其中一个房子中A把大象放入冰箱,这个房子就是类,A把大象放到冰箱是方法,如果是类方法A把大象放到冰箱,这个方法全局调用工厂化的类,如果是实例化的方法,必须有对应的实例,这个房子推到就没了这个实例方法。对应上面的label拓展中方法进行比较;
      类的实例调用是在类的生命周期中存在,当类没有了以后,对应的实例也就没有了,对应的方法也就没有了。静态类不然,只要你引用了那个静态类的命名空间,它就会一直存在,直到我们推出系统。

    相关文章

      网友评论

          本文标题:iOS 说说+(类方法)-(实例方法)

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