iOS面试题 -总结 ,你的基础扎实吗?

1、#import和#include的区别,@class代表什么?

2、浅拷贝和深拷贝区别是什么?

3、Objective-C中类别和类扩展的区别?

4、Objective-C堆和栈的区别?

5、内存管理的几个原则是什么?

6、NSMuatableArray *array = [NSMuatableArray array] 需要释放么?

7、@property本质是什么

8、delegate用什么属性修饰,ARC下与MRC下有何不同,为什么?

9、NSString,NSArray,NSMutableArray分别用什么属性修饰,原因是什么?

10、block用什么属性修饰,为什么?

11、__block与__weak的区别是什么?

12、assign与weak的区别是什么?

13、分别写一个setter方法

完成@property(nonatomic,retain)NSString *name和@property(nonatomic,copy)NSString *name

14、@autoreleasepool {for (long i = 0; i < largeNumber; i++) {Person *per = [[Person alloc] init];[per autorelease];}}有什么内存问题,如何改正?

15、如何写一个单例?

16、post与get的区别?

17、Http与tcp,udp的区别?

18、http都设置哪些header?

19、http与https的区别?

20、网络七层协议(http,tcp/ip处于哪一层)?

21、常用多线程方式有哪些?

22、NSOperation比GCD有哪些优点,如何处理线程依赖

23、runloop与线程的关系

24、runtime的理解

25、在实际项目中遇到过死锁么?如何处理死锁问题

26、runloop有几种模式,runloop接收几种输入源

27、如何处理滑动UI过程中,广告轮播图停止轮询问题,使用runloop的哪种模式

28、有一个需求,需要将N个请求全部完成之后执行某个操作,该如何处理

29、weak会有性能开销么?使用什么代替

30、autorelease pool的原理是什么

31、runloop的原理

32、runloop与autoreleasepool的关系

33、block会延长对象的生命周期么?

34、SSL加密流程

35、网络加密方式有哪些,各自的原理

36、AFnetworking原理

37、SDWebImage框架原理以及是如何做图片缓存的

38、冒泡排序/快速排序算法

39、CALayer与UIView的区别是什么?

40、iOS有几种动画,各自是什么?

41、用熟悉的动画写一个移动的动画

42、instancetype与id的区别

43、如何进行代码适配

44、xib如何处理动态view布局

45、如何处理webview与js之间交互

46、自己自定义一个轮播图

47、如何进行热修复?

48、对MVVM的理解以及如何实践

49、如何进行自动化打包?

50、如何对网络请求进行二次封装

51、比如开发人员要打发布包与企业包,如何在不修改bundle id的情况下快速打包?

52、block比delegate有哪些优缺点

53、FMDB是线程安全的么?

54、tableview从哪些方面进行流畅度优化?

时间: 2024-10-15 14:53:25

iOS面试题 -总结 ,你的基础扎实吗?的相关文章

ios面试题汇总

1.Difference between shallow copy and deep copy??浅复制和深复制的区别??答案:浅层复制:只复制指向对象的指针,而不复制引用对象本身.?深层复制:复制引用对象本身.?意思就是说我有个A对象,复制一份后得到A_copy对象后,对于浅复制来说,A和A_copy指向的是同一个内存资源,复制的只不过是是一个指针,对象本身资源?还是只有一份,那如果我们对A_copy执行了修改操作,那么发现A引用的对象同样被修改,这其实违背了我们复制拷贝的一个思想.深复制就好

史上最全的iOS面试题及答案

1.写一个NSString类的实现 + (id)initWithCString:(c*****t char *)nullTerminatedCString encoding:(NSStringEncoding)encoding; + (id) stringWithCString: (c*****t char*)nullTerminatedCString encoding: (NSStringEncoding)encoding { NSString  *obj; obj = [self alloc

《招一个靠谱的移动开发》iOS面试题及详解(上篇)

多线程.特别是NSOperation 和 GCD 的内部原理. 运行时机制的原理和运用场景. SDWebImage的原理.实现机制.如何解决TableView卡的问题. block和代理的,通知的区别.block的用法需要注意些什么. strong,weak,retain,assign,copy nomatic 等的区别. 设计模式,mvc,单利,工厂,代理等的应用场景. 单利的写法.在单利中创建数组应该注意些什么. NSString 的时候用copy和strong的区别. 响应值链. NSTi

IOS面试题&lt;转&gt;

前言 写这篇文章的目的是因为前两天同学想应聘iOS开发,从网上找了iOS面试题和答案让我帮忙看看.我扫了一眼,倒吸了一口冷气,仔细一看,气的发抖.整篇题目30多个没有一个答案是对的,总结这篇面试题的作者对iOS机制根本就是一知半解就敢发到网上,不管有心还是无心都是坑害新人.所以在这里总结一下这几年面试别人和被别人面试遇到的一些我认为比较好的基础题目分享给大家,进阶题目在后续补充.我的理解如果有错漏请一定指出,非常感谢! 从12年开始做面试官到现在已经三个年头了,这期面过很多形形色色的开发,有腾讯

IOS面试题(经典)

1. 你使用过Objective-C的运行时编程(Runtime Programming)么?如果使用过,你用它做了什么?你还能记得你所使用的相关的头文件或者某些方法的名称吗?答案:Objecitve-C的重要特性是Runtime(运行时),在#import <objc/runtime.h> 下能看到相关的方法,用过objc_getClass()和class_copyMethodList()获取过私有API;使用objective-cMethod method1 = class_getInst

ios面试题大全

1.写一个NSString类的实现 + (id)initWithCString:(c*****t char *)nullTerminatedCString encoding:(NSStringEncoding)encoding; + (id) stringWithCString: (c*****t char*)nullTerminatedCString encoding: (NSStringEncoding)encoding { NSString  *obj; obj = [self alloc

最全的iOS面试题及答案-转载

1. Object-c的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好?为什么? 答: Object-c的类不可以多重继承:可以实现多个接口,通过实现多个接口可以完成C++的多重继承:Category是类别,一般情况用分类好,用Category去重写类的方法,仅对本Category有效,不会影响到其他类与原有类的关系. 2. #import 跟#include 又什么区别,@class呢, #import<> 跟 #import””又什么区别?

iOS 面试题 总结

#include <iostream> using namespace std; int main () { char p[]={'a','b','c'}, q[]="abc"; printf("%d %d\n",sizeof(p),sizeof(q)); //getch(); } //结果 3,4 sizeof有什么作用呢? sizeof是C语言的关键字不并不是函数,这个很容易被忽略 sizeof(a)表示a在内存中所占的字节数 以下是windows

iOS面试题系列之Objective-C相关

1.简述你项目中常用的设计模式.它们有什么优缺点? 常用的设计模式有:代理.观察者.单例. (1)单例:它是用来限制一个类只能创建一个对象.这个对象中的属性可以存储全局共享的数据.所有的类都能访问.设置此单例中的属性数据. 优点:是它只会创建一个对象容易供外界访问,节约性能. 缺点:是一个类只有一个对象,可能造成责任过重,在一定程度上违背了"单一职责原则".单例模式中没有抽象层,所以单例类的扩展有很大的困难.不能过多创建单例,因为单例从创建到程序关闭前会一直存在,过多的单例会影响性能,

超全!iOS 面试题汇总

超全!iOS 面试题汇总 2015-10-20 CocoaChina 作者:Job_Yang 之前看了很多面试题,感觉要不是不够就是过于冗余,于是我将网上的一些面试题进行了删减和重排,现在分享给大家.(题目来源于网络,侵删) 1. Object-c的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好?为什么? 答: Object-c的类不可以多重继承;可以实现多个接口,通过实现多个接口可以完成C++的多重继承;Category是类别,一般情况用分类好