iOS面试题-第五页

41.介绍响应者链.

当用户点击屏幕,能够产生响应的对象组成的链.

继承自NSResponder,响应者链能够中断.

42.传值方式:

通知,单例,代理,属性,block.

43.NSString * test = [[NSData alloc] init],test在编译时和运行时分别是什么类型的对象?

编译时是NSString,运行时是NSData.NSData

44.OC中对象的交互是如何实现的?

消息机制.

45.给定一个字符串,判断字符串中是否还有png,有就删除.

stringContains

使用@""直接替换实现删除

46.目标-动作机制.

Target - action

47.什么是沙盒?沙盒里包含哪些文件,如何获取文件路径.

沙盒:程序可操作的磁盘空间,系统为之开辟.

包含了3个文件夹.

1.Documents:存放一些比较重要的文件,但是放入Documents中的文件不能过大.

2.Library :是一个资源库,存储一些不太重要的数据.里面包含了两个子文件夹,Caches文件夹,用于缓存,

Preferences文件夹,系统偏好设置,用户对应用程序的设置,如密码.perferences路径无法找到,只能通过NSUserDefaults.

如:[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];

48.介绍一下XMPP?

基于XML的点对点通讯协议,实现通讯功能.

优点:可以跨平台开发.

缺点:丢包,只能发文字(图片发送发的是链接).

49.应用程序如何省电?

获取请求不能过频.优化算法.

50.写一个递归方法,计算n的阶乘.

-(NSInteger)digui:(NSInteger)i{

if (i>0) {

return i*[self digui:(i-1)];

}else{

return 1;

}

}

[[NSUserDefaults standardUserDefaults]setObject:@([self digui:3]) forKey:@"value"];

你可能感兴趣的:(iOS面试题-第五页)