Swift runtime

总结:

1.纯swift无法用runtime,
2.继承自UIKit的为了兼容可以用runtime,
3.动态获取方法,如果参数包含swift支持而oc不支持的数据,不能获取,比如Character,元组
4.添加@objc dynamic 标示动态,可以获取变量名和方法名
5.继承自NSObject的Swift类,其继承自父类的方法具有动态性,其他自定义方法、属性需要加dynamic修饰才可以获得动态性。

  1. Swift类在Objective-C中会有模块前缀
    print(objc_getClass("TestASwiftClass")) //nil
    print(objc_getClass("Test.TestASwiftClass")) //Optional(Test.TestASwiftClass)

https://www.cnblogs.com/taoxu/p/7975984.html
https://juejin.im/entry/57c01afd2e958a0069650818#comment

你可能感兴趣的:(Swift runtime)