iOS面试题

iOS面试题

2018-04-18  本文已影响224人  Junetaurus
KVO 实现原理?
KVC 实现原理?
消息转发机制原理?
理解 weak 属性?
项目中网络层如何做安全处理?
main() 之前的过程有哪些?
为什么说 Objective-c 是一门动态的语言?
MVC 和 MVVM,MVP ?
MVC
MVP
MVVM
为什么代理要用 weak?代理的 delegate 和dataSource 有什么区别?block 和代理的区别?
属性的实质是什么?包括哪几个部分?属性默认的关键字都有哪些?@dynamic 关键字和 @synthesize 关键字是用来做什么的?
atomic 安全么?
如何令自己所写的对象具有拷贝功能?
进程和线程的区别?同步异步的区别?并行和并发的区别?
进程和线程的区别
同步和异步的区别
并行和并发的区别
Designated Initializer ?
能否向编译后得到的类中增加实例变量?能否向运行时创建的类中添加实例变量?
给类添加一个属性后,在类结构体里哪些元素会发生变化?
runloop 的 mode 是用来做什么的?有几种 mode?
isa 指针?
Objective-c 中向一个 nil 对象发送消息将会发生什么?
.a 与 .framework 库的区别?静态库和动态库的区别?
如何让静态库中的 Category 变得可用?
BitCode 的理解。
WKWebView 和 UIWebView 的区别?无痕浏览的实现。
//defaultDataStore 是默认选择的存储容器
+ (WKWebsiteDataStore *)defaultDataStore;
//nonPersistentDataStore 会禁止任何数据写入文件系统,可用于无痕浏览
+ (WKWebsiteDataStore *)nonPersistentDataStore;
//可以查看到容器中存储的网站数据的所有种类
+ (NSSet<NSString *> *)allWebsiteDataTypes;
//获取容器中的数据记录
- (void)fetchDataRecordsOfTypes:(NSSet<NSString *> *)dataTypes completionHandler:(void (^)(NSArray<WKWebsiteDataRecord *> *))completionHandler;
//删除容器中的数据记录
- (void)removeDataOfTypes:(NSSet<NSString *> *)dataTypes forDataRecords:(NSArray<WKWebsiteDataRecord *> *)dataRecords completionHandler:(void (^)(void))completionHandler;
- (void)removeDataOfTypes:(NSSet<NSString *> *)websiteDataTypes modifiedSince:(NSDate *)date completionHandler:(void (^)(void))completionHandler;
NSURLSession 和 NSURLConnection 的区别?
WKWebView 支持 NSURLProtocol 吗

WebKit 源码由三大部分组成:

WKWebView 在 WebKit 中的初始化流程:

一个完整的网络请求代理拦截处理流程:

__weak & __unsafe_unretained 的区别
NSCatch 和 NSDictionary区别?
实例方法与类方法的区别
实例方法
类方法
上一篇 下一篇

猜你喜欢

热点阅读