您的位置:首页 > 职场人生

Bat大厂出场率最高的50道经典面试题!iOS开发者们不要错过咯!

2018-10-23 22:36 148 查看

小编整理了一个PDF文档的面试题,由于平台不能上传文件,需要答案可以加小编的QQ交流群656315826,在里面获取文档,也欢迎招聘者,找工作的来,提供一个更大的平台(需要的朋友可以获取,希望可以帮助到大家)

⽬录:

基础

1、如何令⾃⼰所写的对象具有拷⻉功能?

2、说说你理解weak属性?

3、题⽬:Swift mutating关键字的使⽤?

4、UIView和 CALayer是什么关系?

5、下⾯的代码输出什么?

6、@synthesize 和 @dynamic 分别有什么作⽤?

7、动态绑定

8、Category(类别)、 Extension(扩展)和继承的区别

9、为什么代理要⽤weak?代理的delegate和dataSource有什么区别?block和代理

的区别?

10、id和NSObject*的区别

11、如何令⾃⼰所写的对象具有拷⻉功能?

12、使⽤系统的某些block api(如UIView的block版本写动画时),是否也考虑引⽤

循环问题?

13、⽤@property声明的NSString(或NSArray,NSDictionary)经常使⽤copy关键

字,为什么?如果改⽤strong关键字,可能造成什么问题?

14、UIView和 CALayer是什么关系?

15、static有什么作⽤?

底层:

16、main()之前的过程有哪些?

17、KVO基本原理?

18、Swift 下的如何使⽤ KVC?

19、:Swift有哪些模式匹配?

20、objc在向⼀个对象发送消息时,发⽣了什么?

21、静态库的原理是什么?你有没有⾃⼰写过静态编译库,遇到了哪些问题?

22、runloop是来做什么的?runloop和线程有什么关系?主线程默认开启了runloop

么?⼦线程呢?

23、不⼿动指定autoreleasepool的前提下,⼀个autorealese对象在什么时刻释放?

(⽐如在⼀个vc的viewDidLoad中创建

24、不⼿动指定autoreleasepool的前提下,⼀个autorealese对象在什么时刻释放?

(⽐如在⼀个vc的viewDidLoad中创建)

25、OC完整的消息转发机制+代码实现【暴击】

26、、以+ scheduledTimerWithTimeInterval...的⽅式触发的timer,在滑动⻚⾯上的

列表时,timer会暂定回调,为什么?如何解决?

27、如何⼿动触发⼀个value的KVO

28、如何对定位和分析项⽬中影响性能的地⽅?以及如何进⾏性能优化?

29、串⾏并⾏,异步同步的区别?

30、线程是什么?进程是什么?⼆者有什么区别和联系?

31、RunLoop是什么?

32、假设有⼀个字符串aabcad,请写⼀段程序,去掉字符串中不相邻的重复字符

串,即上述字符串处理之后的输出结果为:aabcd

@autoclosure(⾃动闭包)

34、iOS app启动如何优化?

35、swift⾯试题:

36、怎样防⽌反编译?

37、UITableView性能优化,超实⽤

线程:

37、 不要阻塞主线程

38、谈谈你对多线程开发的理解?ios中有⼏种实现多线程的⽅法?

39、进程和线程的区别?同步异步的区别?并⾏和并发的区别?

40、ViewController⽣命周期

41、iOS 中的多线程

42、内存管理的⼏条原则时什么?按照默认法则.那些关键字⽣成的对象

需要⼿动释放?在和property结合的时候怎样有效的避免内存泄露?

谁申请,谁释放

43、dispatch_barrier_async的作⽤是什么?

44、如何⽤GCD同步若⼲个异步调⽤?(如根据若⼲个url异步加载多张图⽚,然后在

都下载完成后合成⼀张整图)

http:

46、http与https的区别?

47、服务器能否知道APNS推送后有没有到达客户端的⽅法?

app:

48、1.什么⽅式可以看到上架App的头⽂件?

2.阅读过哪些框架的源码?能说说它的架构⽅式吗

49、iOS iAP内购审核可能失败的问题

50、IAP内购中虚拟货币导致审核⽆法通过的问题?

小编整理了一个PDF文档的面试题,由于平台不能上传文件,需要答案可以加小编的QQ交流群656315826,在里面获取文档,也欢迎招聘者,找工作的来,提供一个更大的平台(需要的朋友可以获取,希望可以帮助到大家)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: