那些年,在金九遇到的面试问题

主要是用来记录被问到的问题


1.tableView有哪些优化的方式

2.做单点登录的时候应该在哪写判断登录的代码

3.单点登录的时候,怎么存储登录信息,网页登录怎么存储(NSHTTPCookieStorage方面的考察)

4.GCD和NSOperationQueue的区别

5.NSTimer和NSDisplayLink的区别

6.OC的内存管理机制

7.自动释放池什么时候释放内容

8.你在实际项目当中都用到了哪些运行时相关的内容

9.NSObject都有哪些属性

10.+(void)load和+(void)initliaze的区别

11.为什么method swizzing要写在+(void)load方法中,写在+(void)initliaze中可不可以

12.视频离线缓存是怎么实现的

13.假设缓存电视剧,怎么判断离线缓存的视频是电视剧的哪一集(m3u8)

14.iOS支持哪几种视频格式的播放

15.你是怎么实现UITableViewCell高度缓存的

16.iOS沙盒目录是怎么样的

17.iOS沙盒里每个目录下都是放什么内容的

18.归档的内容是以什么形式存储的?存储在什么地方?

19.快速排序

20.有两个已经排好顺序的数组,请合并数组且排序

21.有一堆石子,你和伙伴两个人每次可以拿1到3个,每个人都可以以最优的方式拿石子,谁最后将石子拿完,则那个人算输,请你写出一个方法,判断需要多少个石子保证自己肯定能赢

22.block用copy和strong修饰的区别?block能不能用strong修饰

21.atomic和natomic的区别

22.NSLock的使用方式

23.block有几种样式

24.block存在放在栈上的时候吗

25.几种循环引用的形式

26.UIView的动画属性的block会存在循环引用吗?为什么?

27.GPUImage的实现过程

28.为什么设置cell中透明度属性会影响性能

29.MVVM设计模式的优缺点

30.xib中怎么自适应高度

31.使用xib的优缺点

32.怎么在分类当中添加属性?为什么直接添加属性无效

33.kvo的实现原理

34.消息分发机制

35.怎么将超出视图范围的控件响应事件

36.深拷贝和浅拷贝,怎么自定义实现copy

37.weak和assign的区别

38.isa指针的指向

39.为什么子类能够继承父类的方法

40.metaclass都存储什么内容

41.block引用外部变量的原理

42.异步并发怎么先执行a,b,c再执行d

43.串行异步任务会开辟线程吗?开几个线程?

44.怎么加密登录信息

45.类方法和实例方法的区别

46.apns的原理

47.oc是怎么和js进行交互的

48.xml格式解析

49.单向链表逆序

50.二叉树

你可能感兴趣的:(那些年,在金九遇到的面试问题)