sw

1、swift是静态语言,有类型推断,OC是动态语言  swift作为强类型检查的静态编译语言,可以加载动态链接库,连接动态模块,也支持面向协议编程,同时还支持函数式编程,OC面向对象编程。

2、swift的协议不仅可以被类实现,也可以被struct和enum实现

3、OC中的常量(const)是编译期决定的,Swift中的常量(let)是运行时确定的

4、访问权限由大到小 依次为:open,public,internal(默认),fileprivate,private   

final关键字可以在class、func和var前修饰,表示不能被继承或重写,否则编译器会报错, 可以将类或者类中的部分实现保护起来,从而避免子类破坏。

5、Map、FlatMap、Filter、Reduce

6、String是结构体,NSString是类,结构体是值类型,值类型被赋予给一个变量、常量或者被传递给一个函数的时候,其值会被拷贝。

7、[unowned self]    和weak 区别 ?

 [unowned self]  如果回调在self释放后再调用  会crash unowned 引用的对象释放后 仍会对已经释放的对象保持一个“无效的”引用 它不是optional 不会指向nil  如果访问成员属性会崩溃 weak标记的被释放后会置为nil(被标记weak的变量一定需要是optional)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容