背景
朋友问:外面行情怎样?面试都问了些啥?所以衍生出了这篇文章。
以下题目不提供答案,请自行学习!
面试题
OC部分
关键字
简述关键字
assign
weak
strong
retain
copy
readonly
readwrite
nonatomic
atomic
的作用?
weak
跟assign
的区别?
atomic
是不是一定就是线程安全的?为什么?如何保证其线程安全?
Classroom
这个类有啥问题?
@interface Classroom : NSObject
@property (nonatomic, strong) NSString *name;
@property (nonatomic, copy) NSMutableArray *students;
@end
weak
的实现原理?
设计模式
图示
MVC
、MVVM
?
简述MVVM模式中VM的作用?
响应链
简述事件传递跟响应链?
如何将一个控件的触摸事件传递给另一个控件处理?
runtime
开发中
runtime
一般用来干啥?
替换了系统的方法一般需要做什么处理?
为什么说
OC
是一门动态的语言?
消息转发
什么时候会报
unrecognized selector
的异常?
消息转发的步骤?
runloop
如何在子线程开启一个runloop?
性能
如何对
tableView
进行性能优化?
如何监测
APP
的性能?
如何缩小
ipa
包?
如何在不用工具也不用第三方框架的情况下,对项目进行一个内存泄漏检测?
如何自定义一个
tableView
?
多线程
现需要对5个ip,每个ip ping5次然后计算平均值,如何设计?
GCD
、NSOperationQueue
的异同?
Swift
Swift
中如何使用OC
文件?反之又如何?
public
open
的异同?
map
filter
reduce
的用法?
throws
rethrows
的区别?
结语
预祝各位大佬找到福利好、薪资高的工作!