美文网首页
问题:Objective-C 如何对已有的方法,添加自己的功能代

问题:Objective-C 如何对已有的方法,添加自己的功能代

作者: 姜小舟 | 来源:发表于2020-08-24 09:22 被阅读0次
  • 子类继承重写父类
  • runtime方法交换method swizzling(这题目主要考察)

    先在分类中添加一个方法,注意不能重写系统方法,会覆盖.

    + (NSString *)myLog {
        # 这里写打印行号,什么方法,哪个类调用等等
    }
    #然后交换方法
    + (void)load {
        NSLog("获取description方法地址")
        Method description = class_getClassMethod(self, @selector(description));
        
        NSLog("获取myLog方法地址")
        Method myLog = class_getClassMethod(self, @selector(myLog));
        
        NSLog("交换方法地址,相当于交换实现方式")
        method_exchangeImplementations(description, myLog);
    }
    

    下回调用description方法时,实际上调用的是myLog的方法。

相关文章

  • 问题:Objective-C 如何对已有的方法,添加自己的功能代

    子类继承重写父类 runtime方法交换method swizzling(这题目主要考察)先在分类中添加一个方法,...

  • 问题[◇◇◇◇◇]:Objective-C 如何对已有的方法,添

    这题目主要考察的是runtime如何交换方法 先在分类中添加一个方法,注意不能重写系统方法,会覆盖先在分类中添加一...

  • 分类-Category

    分类-Category 分类的功能 在OC中,我们可以使用分类为类添加方法,属性.也可以覆盖类原有的方法,自己添加...

  • 分类-Category

    分类-Category 分类的功能 在OC中,我们可以使用分类为类添加方法,属性.也可以覆盖类原有的方法,自己添加...

  • iOS - Little Category

    category是Objective-C里面最常用到的功能之一。category可以为已有的类增添实例方法或类方法...

  • 21.Swift学习之扩展

    扩展 为现有的类、结构体、枚举类型、协议添加了新功能。扩展和 Objective-C 中的分类类似。 扩展可以:添...

  • iOS 分类(Categories)

    简介: 分类是一种为现有的类添加新方法的方式。利用Objective-C的动态运行时分配机制,可以为现有的类添加新...

  • 面试问题之五:类别 扩展 继承

    类别 类别是一种为现有的类添加新方法的方式。 利用Objective-C的动态运行时分配机制,可以为现有的类添加新...

  • iOS类目的简单介绍

    1.什么是类目(类别) 类别( category )是 Objective-C 语言的新特性,为现有的类添加新方法...

  • Swift 扩展 笔记

    扩展为现有的类、结构体、枚举类型、或协议添加了新功能 扩展和 Objective-C 中的分类类似。(与 Obje...

网友评论

      本文标题:问题:Objective-C 如何对已有的方法,添加自己的功能代

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