代码拉取完成,页面将自动刷新
最近在准备面试,所以自己边复习边整理,列出了一些自己复习的知识点。
后面的一些知识模块之所以没有延展开,是因为有的地方自己理解的还不到位,我还需要时间仔细整理。
这个仓库根据我的设想,我认为还远远没有完成,后续会不断更新,起初并不想写答案,但考虑到有的人需要,其次我自己写一个很简单的思路,起一个提示的作用,如果有想错的地方,也欢迎大家指正。
再次说明:所有的答案只写思路,不会长篇大论的验证,只起到提示作用。
欢迎大家提 PR!!!
推荐一个很好的算法总结 - 链接
IP
地址的有效性?iOS
内存管理的理解?(三种方案的结合) - 链接
ARC
)数应该遵循的原则? - 链接
ARC
自动内存管理的原则? - 链接
__weak
修饰的变量,是否已经被注册在了 @autoreleasePool
中?为什么? - 链接
ARC
的 retainCount
怎么存储的? - 链接
@autoreleasePool
的数据结构? - 链接
__weak
和 _Unsafe_Unretain
的区别? - 链接
ARC
,但还是需要 @AutoreleasePool
的存在? - 链接
__weak
属性修饰的变量,如何实现在变量没有强引用后自动置为 nil
? - 链接
retain
,copy
,assign
,weak
,_Unsafe_Unretain
关键字的理解。 - 链接
ARC
在编译时做了哪些工作? - 链接
ARC
在运行时做了哪些工作? - 链接
autorelease
么?为什么? - 链接
悬垂指针
?什么是 野指针
? - 链接
深拷贝
和 浅拷贝
的概念,集合类深拷贝如何实现? - 链接
BAD_ACCESS
在什么情况下出现? - 链接
@dynamic
关键字?- 链接
@autoreleasrPool
的释放时机?- 链接
retain
、release
的实现机制?- 链接
Dealloc
的实现机制?- 链接
MRC
下如何重写属性的 Setter
和 Getter
? - 链接
Obj-C
中,如何检测内存泄漏?你知道哪些方式? - 链接
Runloop
和线程的关系? - 链接
Runloop
的 Mode
?(越详细越好) - 链接
Observer
?(Mode中的重点) - 链接
Runloop
的内部实现逻辑?(运行过程) - 链接
Runloop
?(AFNetworking、Texture 等)autoreleasePool
在何时被释放? - 链接
事件响应
的过程? - 链接
手势识别
的过程? - 链接
GCD
在 Runloop
中的使用? - 链接
NSTimer
,以及 NSTimer
的循环引用。 - 链接
AFNetworking
中如何运用 Runloop
? - 链接
PerformSelector
的实现原理?- 链接
runloop
解释一下页面的渲染的过程?- 链接
Runloop
实现一个常驻线程?这种线程一般有什么作用?- 链接
NSTimer
有时候不好使?(不同类型的Mode)- 链接
PerformSelector:afterDelay:
这个方法在子线程中是否起作用?为什么?怎么解决?- 链接
App
运行过程中是否卡顿?UIView
和 CALayer
是什么关系?- 链接
Bounds
和 Frame
的区别? - 链接
TableViewCell
如何根据 UILabel
内容长度自动调整高度?LoadView
方法了解吗?- 链接
UIButton
的父类是什么?UILabel
的父类又是什么?- 链接
View
的生命周期,一旦收到内存警告会如何处理?- 链接
UIView
中正在播放的动画?暂停后如何恢复?- 链接
UIView
的生命周期?- 链接
UIViewController
的生命周期?- 链接
ViewController
? - 链接
setNeedsDisplay
和 layoutIfNeeded
两者是什么关系?- 链接
nil
、NIL
、NSNULL
有什么区别?- 链接
NSMutableArray
? - 链接
iOS
设备的唯一性? - 链接
atomic
修饰的属性是绝对安全的吗?为什么? - 链接
isEqual
和 hash
方法时要注意什么?id
和 instanceType
有什么区别?- 链接
Super
关键字的理解。- 链接
逆变
和 协变
吗?- 链接
@synthesize
和 @dynamic
分别有什么作用?- 链接
Obj-C
中的反射机制了解吗?- 链接
typeof
和 __typeof
,__typeof__
的区别? - 链接
Obj-C
代码改变为 C++/C
的代码?- 链接
objc_getClass()
、object_getClass()
、Class
这三个方法用来获取类对象有什么不同?NSUrlConnect
相关知识。NSUrlSession
相关知识。Http
和 Https
的区别?为什么更加安全?- 链接
Http
的请求方式有哪些?Http
有什么特性?- 链接
三次握手
和 四次挥手
?解释一下为什么是三次握手
又为什么是 四次挥手
?- 链接
GET
和 POST
请求的区别?- 链接
HTTP
请求报文 和 响应报文的结构?- 链接
Mimetype
? - 链接
TCP/IP
五层模型的协议? - 链接
OSI
七层模型的协议? - 链接
大文件下载
的功能有什么注意点? - 链接
断点续传
功能该怎么实现? - 链接
Wireshark
、Charles
、Paw
等工具会使用吗?NSUrlProtocol
用过吗?用在什么地方了? - 链接
MOCK
各种网络环境? - 链接
DNS
的解析过程?网络的 DNS
优化。 - 链接
Post
请求体有哪些格式? - 链接
Charles
的原理是什么?说一下中间人攻击的过程。- 链接
SSL
传输协议?说一下 SSL
验证过程?- 链接
Http
的持久连接?- 链接
TCP
?- 链接
UDP
? - 链接
session
和 cookie
? - 链接
1M
,如何针对某些请求,限制其流量?NSThread
相关知识? - 链接
GCD
相关知识? - 链接
NSOperation
和 NSOperationQueue
相关知识? - 链接
GCD
并发队列实现机制?- 链接
NSLock
?是否会出现死锁? - 链接
NSContion
- 链接
NSContionLock
- 链接
NSRecursiveLock
- 链接
Synchronized(self) {// code}
- 链接
dispatch_semaphore
。 - 链接
OSSpinLock
。 - 链接
pthread_mutex
- 链接
NSDistributedLock
。- 链接
NSMutableArray
、和 NSMutableDictionary
是线程安全的吗?NSCache
呢? - 链接
并行
和 并发
有什么区别? - 链接
NSOperation
? - 链接
GCD
与 NSOperationQueue
有哪些异同?- 链接
MVC
?MVVM
?MVP
?CDD
?App
可以分为哪些层?NSNotification
的实现机制?发消息是同步还是异步? - 链接
NSNotification
的特点。 - 链接
KVO
的实现机制。 - 链接
KVO
在使用过程中有哪些注意点?有没有使用过其他优秀的 KVO
三方替代框架? - 链接
KVO
的注册依赖键是什么? - 链接
KVO
手动通知? - 链接
KVO
? - 链接
KVO
? - 链接
Delegate
通常用什么关键字修饰?为什么? - 链接
通知
和 代理
有什么区别?各自适应的场景? - 链接
__block
的解释以及在 ARC
和 MRC
下有什么不同?- 链接
Block
的内存管理。- 链接
Block
自动截取变量。- 链接
Block
处理循环引用。- 链接
Block
有几种类型?分别是什么?- 链接
Block
和 函数指针
的区别? - 链接
Block
? - 链接
Dispatch_block_t
这个有没有用过?解释一下?Sqlite3
- 链接
Sqlite3
常用的执行语句Sqlite3
在不同版本的APP,数据库结构变化了,如何处理?Sqlite3
的封装) - 链接
这个模块需要大量代码,我就不贴了
App
换肤(夜间模式)? - 链接
JS
和 OC
互相调用的几种方式? - 链接
WKWedView
时遇到过哪些问题? - 链接
UIWebView
的插件化?SFSafariViewController
?CALayer
的认识。- 链接
CALayer.contents
属性。- 链接
iOS
中,动画有哪几种类型?SSL
加密的过程用了哪些加密方法,为何这么做? - 链接
iOS
的签名机制?APP
进行重签名?tableview
的流畅度?- 链接
Instruments
进行性能调优?(Time Profiler、Zombies、Allocations、Leaks)APP
的启动时间?APP
的网络流量?APP
包的大小?- 链接
离屏渲染
?什么情况下会触发?该如何应对?- 链接
APP
的内存?APP
的电量?- 链接
LLDB
调试。breakPoint
。NSAssert
的使用。Charles
的使用。
Charles
下载过去任意版本的 App
。Reveal
的使用。iOS
常见的崩溃类型有哪些?- 链接
AutoLayout
出现了问题,怎样快速调试?- 链接
load
和 Initialize
的区别? - 链接
Designated Initializer
的规则? - 链接
App
编译过程有了解吗?- 链接
APNS
的认识?- 链接
App
上有一数据列表,客户端和服务端均没有任何缓存,当服务端有数据更新时,该列表在 wifi
下能获取到数据,在 4G 下刷新不到,但是在 4g 环境下其他 App
都可以正常打开,分析其产生的原因?int a=5,b;
b=(++a)+(++a);
int a = 5;
int b = 10;
i
值得取值范围? (大于或等于10000) __block int i = 0;
while (i<10000) {
dispatch_async(dispatch_get_global_queue(0, 0), ^{
i++;
});
}
NSLog(@"i=%d",i);
}
0
? - 链接
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。