Swift如何加载一个类

时间:2016-08-19 10:07:57

标签: objective-c swift runtime

正如我们所知,当加载Objective-C类时,将调用+load方法。但是在Swift中我们没有+load方法。

所以我试图投入这个。我在call_load_methods添加了一个符号断点。在Objective-C世界。此函数将调用所有类+load。但它没有进入这个断点。

所以我想知道如何在Swift中加载。或者你们能给我更多关于Swift运行时或其他东西的细节吗?

1 个答案:

答案 0 :(得分:0)

  

不幸的是,在Swift中实现的加载类方法永远不会   由运行时调用,使该推荐不可能。   相反,我们只能选择第二选择:

     

初始化时实现方法调配。这可以安全地完成,所以   只要你在执行时检查类型并包装调整   dispatch_once(无论如何你都应该这样做)。实施方法   在应用代表中徘徊。而不是通过添加方法调整   一个类扩展,只需向app delegate添加一个方法即可   在调用application(_:didFinishLaunchingWithOptions :)时执行。   根据您正在修改的类,这可能就足够了   应该保证每次都执行你的代码。

source