注:这些是我在实际面试中,遇到的问题;因为我的简历上写了我精通Android iOS MySQL JAVA 了解PHP,所以遇到了各种各样的问题;问题没有分类,望谅解;
1、OC中的多继承
多继承在这里用protocol委托代理实现;
2、OC中有私有方法吗?
OC类中方法只有两种,静态方法和实列方法; OC中所有的实列变量默认都是私有的,所有的实列方法默认都是共有的;
3、进程和线程的区别
进程:有独立的进程空间,一个进程崩溃后,在保护模式下不会对其他进程产生影响,进程切换,耗费资源大,效率差但是很健壮; 线程
线程:同一进程的线程共享本进程的地址空间,一个线程崩溃整个进程都死掉
涉及到频繁的切换时,使用线程要好于进程。如果要求同时进行并且又要共享某些变量的并发操作,只能用线程不能用进程
4、OC中内存管理
`
5、解释一下runloop
6、GCD
7、CoreAnimation
8、Swift中有哪些访问权限
9、iOS APP优化主要从哪些方面
10、iOS页面间的传值,有哪些方法
11、代理
12、单列
13、构架模式有几种,他们之间的区别
14、OC中多线程开发有哪几种,分别有什么优缺点
15、MySQl数据的读写分离
17、在Main函数之前,系统做了哪些事情
18、Controller层太臃肿,怎么办(跟13问有关)
19、OC中网络安全需要注意哪些问题
20、iOS开发中有用到哪些框架
21、iOS开发中布局方式有哪些
22、Swift中 ‘!’和 ‘?’有什么区别
23、Swift中“1+1.5”等于多少
不能直接相加,这里一个是Int,一个是Double,需要转换类型
24、通知
25、CAlayer和UIView的区别
26、OC中有哪些关键字
27、堆和栈的区别
28、runtime机制
29、PHP中单引号和双引号的区别
30、JAVA中1-0.7要准确拿到0.3,应该怎么算
这个问题主要是想问bigdecimal
31、JAVA中如果写一个平均红包功能,10元钱发3个红包,那么每个用户得到的就是0.33元,如果这个时候要退还红包金额,如何保证退还回去的总金额,依旧是10元,而不是0.99元;
`
`