iOS 开发Swift面试题
以下是武汉某大型医疗公司的iOS岗位面试题,答案请自行百度。
1.var 和 let 有什么区别?
2.什么是可选类型(optional)? 如何解包一个optional值?
3.深拷贝和浅拷贝的区别?
4.weak和unowned是什么意思?二者有什么不同?何时使用unowned?
5.访问关键字open,public,internal,fileprivate,private的区别?
6.什么是属性观察?
7.如何将Swift中的协议(protocal)中的部分方法设计为可选(optional)?
8.什么是函数重载?Swift是否支持函数重载?
9.Swift中的枚举,关联值和原始值的区别是什么?请举例说明。
10.Swift中闭包结构是怎样的?逃逸闭包又是什么?自动闭包呢?
11.delegate和notification的区别?
12.请用代码实现单利模式。
13.Swift中初始化器有哪些?
14.请看下面一段代码分析一下运行后的结果:
int main(int argc, char *argv[]) {
@autoreleasepool {
dispatch_sync(dispatch_get_main_queue(), ^{
NSLog(@"hello world");
});
}
}