我只是想知道Swift是像php一样的动态还是静态的,我的意思是我可以在应用程序运行时生成类吗?
它是静态的-非常静态。编译器必须有关于所有类和功能的全部信息 在编译时 。您可以(使用extension)“扩展”现有的类,但是即使那样,您也必须在编译时完全定义该扩展所包含的内容。
extension
Objective-C是动态的,并且在现实生活中,由于您可能会在Cocoa的存在下使用Swift,因此可以使用Objective- C运行时在暴露给Objective-C的Swift类中注入/转换方法。即使您使用的是Swift语言,也可以执行此操作。但是Swift 本身 是静态的,并且实际上是经过明确设计的,目的是最大程度地减少或消除使用Objective-C型动力。