iOS笔试题(8月)

简单整理了一下最近遇到的iOS相关的笔试题,后续有的话还会继续添加,希望能对求职的朋友有所帮助.


2016.8.10

1.用@property声明的NSString(或NSArray,NSDictionary)经常使用copy关键字,为什么?如果改用strong关键字,可能造成什么问题?

2.@systhesize和@dynamic分别有什么作用?

3.objc中向一个nil对象发送消息将会发生什么?

4.iOS的沙盒目录结构是怎样的?App Bundle里面都有什么?

5.+load和+initialize的区别是什么?

2016.8.11

1.给定一个字符串,输出本字符串中只出现一次并且最靠前的那个字符的位置?比如:'abaccddeeef',则是b,输出 b 2

2.目前有一个textView,x现在要为它添加placeholder属性,请详细描述你的思路:(最好写代码)

3.请列举iPhone进行适配的方式,请详细描述.

4.请描述一下你常用的第三方库,最好可以描述一下实现过程或者基本的原理.

推送相关:    聊天相关:  UI相关:  网络加载:

2016.8.18

1.(1)请描述进程和线程的区别?

(2)多线程程序有什么优点,缺点?多进程程序有什么优点,缺点?与多线程相比,有何区别?

2.observer设计模式一般用在什么场合?

3.HTTP协议标准定义有八个方法,具体是那些?

4.HTTP协议定义有5种错误,分别代表什么?

1XX  2XX  3XX  4XX  5XX

2016.8.24

1.请问您所用到的数据持久化存储方法有哪些?分别简要描述这些方法(至少写出类名).

2.请简单写出SQLite或FMDB表格的创建及增,删,改,查步骤,遗忘部分,写出关键词即可.

3.您所用到的项目框架有哪些,简要概述.(画示意图亦可).

4.简要叙述您所遇到的内存问题,怎么解决的?

5.之前是否做过有关视频,音频的项目,若做过,请写出获取视/音频时长的方法.

6.简要写出自己封装的网络请求类,写出关键句即可.

7.曾经写过什么工具类,请列出你比较常用的类.

8.图文混排有哪些方法?你用的有哪些?简要叙述(任意一种)原理.

9.有没有上线项目,上线过程中遇到过什么问题?简单列出至少三条.

10.对于视频类虚拟商品,用什么支付手段?怎么处理才能上AppStore?简要叙述必要事项.

2016.8.27

1.Object C中创建线程的方法是什么?如果在主线程中执行代码,方法是什么?如果延时执行代码,方法又是什么?

2.描述一下iOS SDK中如何实现MVC 的开发模式.

3.聊聊tableView的重用机制?

4.编程题:一层循环实现9*9乘法口诀的打印(可用C语言).

5.编程题:如何实现一个数组每个元素一次向右移动k位,(后头的往前面补),比如:[1,2,3,4,5]挪两位变成[4,5,1,2,3].

2016.8.30

1.用预处理指令#define声明一个常数,用以表明1年中有多少秒(忽略闰年问题)

2.#import跟#include有什么区别?@class又有什么作用?

3.字面量语法的优点,请举例一个字面量数组和一个字面量字典.

4.在一个对象的方法内部,以下两种赋值方式有什么不同?

方法一:self.name = value;

方法二:name = value;

5.简述readwrite,readonly,assign,retain,copy,nonatomic在属性修饰中的作用.

6.怎样自动生成属性的获取方法和设置方法?

7.为什么很多内置类如UITableViewController的delegate属性都是assign而不是retain的?

8.什么时候用delegate,什么时候用Notification?

9.类别有什么作用?

10.协议是什么,有什么作用?

11.MVC设计模式是什么?你还熟悉什么设计模式?

12.你在开发项目中,用到了哪些数据存储方式;iOS中常见的方式有哪些,各有什么区别?

你可能感兴趣的:(iOS笔试题(8月))