这个栏目将持续更新--请iOS的小伙伴关注!
(答案不惟一,欢迎留言)面试
一、多线程的应用objective-c
二、GCD实现多个请求都完成以后返回结果数据库
三、A、B两个int数组,获得A数组中B数组不包含的元素编程
四、事件传递链,页面上一个按钮,按钮和它的superView有同样的action,为何只执行button的action?数组
五、runtime的应用性能优化
六、array中加入对象,对象的retainCount会加1 如何是的对象本身管理本身的生命周期服务器
七、bugly的卡顿监控原理多线程
八、如何架构一个app架构
九、c中,malloc对象,传入了size,free只须要指针,这是为何?并发
十、数据库选择缘由(realm 、coreData、FMDB、Sqlite)
十一、数据库作过哪些优化
十二、脚本打包原理
1三、app运行过程当中,同时最多有几个线程,怎么实现的高并发
1七、iOS atomatic nonatomic区别和理解
1八、[#import 跟 #include 有 什 么 区 别 , @class 呢 , #import<> 跟 #import” ”有什么区别?](https://www.jianshu.com/p/03f4cd6e7ed4)
1九、Object-c 的类能够多重继承么?能够实现多个接口么?Category 是什 么?重写一个类的方式用继承好仍是分类好?为何?
20、属性 readwrite,readonly,assign,retain,copy,nonatomic 各是 什么做用,在那种状况下用?
2一、对于语句 NSString*obj=[[NSDataalloc]init];obj 在编译时和运行时 分别时什么类型的对象?
2二、常见的 objective-c 的数据类型有那些, 和 C 的基本数据类型有什 么区别?如:NSInteger 和 int
2三、Objective-C 如何对内存管理的,说说你的见解和解决方法?
2四、原子(atomic)跟非原子(non-atomic)属性有什么区别?
2五、ObjectC 中建立线程的方法是什么?若是在主线程中执行代码,方 法是什么?若是想延时执行代码、方法又是什么?
2六、浅复制和深复制的区别?
2八、类别和类扩展的区别
30、[类变量的@protected,@private,@public,@package,声明各有什么 含义?](https://www.jianshu.com/p/ec402bed50d3)
3一、简述 OC 中内存管理机制。与 retain 配对使用的方法是 dealloc 还 是 release,为何?须要与 alloc 配对使用的方法是 dealloc 仍是 release,为何...
3二、说说响应链
3四、RunLoop 是什么?
3五、简述你对 UIView、UIWindow 和 CALayer 的理解
3六、iOS 的动态性
3九、什么状况使用 weak 关键字,相比 assign 有什么不一样?
4二、用 @property 声明的 NSString(或 NSArray,NSDictionary)常用 copy 关键字,为何?若是改用 strong 关键字,可能形成什么问题?
4三、怎么理解浅拷贝与深拷贝?
4六、@protocol 和 category 中如何使用 @property?
4七、category 和 extension 有什么区别?category 是如何加载的?category 的方法覆盖是怎么处理的?
4八、@synthesize 和 @dynamic 分别有什么做用?
4九、ARC 下,不显式指定任何属性关键字时,默认的关键字都有哪些?
50、在有了自动合成属性实例变量以后,@synthesize 还有哪些使用场景?
5一、一个 objc 对象如何进行内存布局(考虑有父类的状况)?
5二、runtime 如何经过 selector 找到对应的 IMP 地址(分别考虑实例方法和类方法)?Selector、Method 和 IMP 的有什么区别与联系?
5四、objc_msgSend、_objc_msgForward 都是作什么的?OC 中的消息调用流程是怎样的?
5五、可否向编译后获得的类中增长实例变量?可否向运行时建立的类中添加实例变量?为何?
5八、以 + scheduledTimerInterval... 的方式触发的 timer,在滑动页面上的列表时,timer 会暂定回调,为何?如何解决?WithTime
6七、dispatch_barrier_async 的做用是什么?
7二、什么是事件响应链?
7三、当咱们要作一些基于 CALayer 的动画时,有时须要设置 layer 的锚点来配合动画,这时候咱们须要注意什么?
80、介绍一下观察者模式
8一、在一个HTTPS链接的网站里,输入帐号密码点击登陆后,到服务器返回这个请求前,中间经历了什么
8二、在一个app中间有一个button,在你手触摸屏幕点击后,到这个button收到点击事件,中间发生了什么
8四、键路径(keyPath)、键值编码(KVC)、键值观察(KVO)
8五、NSNotification、Block、Delegate和KVO的区别
8九、Core Data的功能
90、堆和栈的区别
9一、线程与进程的区别和联系?
9二、多线程编程
9六、解析TCP慢启动特性?
100、谈下Objective C都有哪些锁机制,你通常用哪一个?
持续更新,请多多关注
更多:iOS面试题(附答案)
另外附上一份pdf的面试题大全,以及收集的各大厂面试题 ! 要的加iOS高级技术群:624212887,群文件直接获取
以下图所示: