美文网首页
Swift 继承重写extension方法

Swift 继承重写extension方法

作者: _风雨 | 来源:发表于2021-08-18 14:16 被阅读0次

今天在继承重写extension的一个方法时报错

Overriding non-@objc declarations from extensions is not supported

谷歌了一圈发现没解决,和我的情况有点不一样

伪代码如下

protocol Delegate {
              func test()
}

class A: UIViewController {

}

extension A: Delegate {
                func test() {
              }
}

当B继承A时,extension B 重写 test()方法时,就出现了开头的报错,解决方式居然是在extension A 前面加上@objc就行了

如下

@objc extension A: Delegate {
                            func test()
}

class B: A {
}

extension B {
                 override func test() {
              }
}

相关文章

  • Swift 继承重写extension方法

    今天在继承重写extension的一个方法时报错 谷歌了一圈发现没解决,和我的情况有点不一样 伪代码如下 当B继承...

  • Swift的Swizzle黑魔法

    Objective-C Category 可以随意重写本类的方法, Swift的Extension虽然易用, 但仍...

  • swift中在extension中重写父类的方法

    无法在class的extension中直接重写父类的方法swift中函数派发机制[https://www.jian...

  • Swift 5.x - 初始化(中文文档)

    引言 继续学习Swift文档,从上一章节:继承,我们学习了Swift继承相关的内容,如继承的作用、重写父类的方法和...

  • Swift 继承之方法重写

    Swift 类继承时,需要方法重写,结果报错 :Overriding non-@objc declarations...

  • Swift 5.1 (13) - 继承

    继承 继承是一种基本行为:子类继承父类方法,属性和其他特性。子类可以重写父类的方法,属性。继承将类与Swift中的...

  • Swift笔记<十四>三大特性

    和object-c一样swift的三大特性同为封装,继承,多态 封装 继承 重写方法 重载方法参数名相同,参数个数...

  • 自定义布局

    从 Panel 继承 重写 MeasureOverride 方法重写 ArrangeOverride 方法

  • swift中子类重写父类的方法

    子类在主体中重写父类的方法 如果重写的父类方法在主体中,直接重写即可,如果重写的父类方法在extension中,父...

  • swift - 自定义view

    继承自uiview 重写初始化方法 重写布局方法

网友评论

      本文标题:Swift 继承重写extension方法

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