资源描述
iOS笔试题
姓名_________________ 时间____________________
一、填空题(20题)
1、与alloc对应的方法是 ,与retain对应的方法是 。
2、@property的作用是 , @synthesize的作用是 。
3、一个对象的dealloc方法在 时被调用。
4、 分类(categories)能够向一个已有的类中添加 。
拓展(extensions)能够在当前类中增加 。
5、iOS开发者账户中,最多能够添加 台设备号。
6、协议(protocal)可以分为两种,其中以关键字 申明的协议可以不被实现。
7、 是大多数Objective-C类继承的根类,它没有父类 。
8、代理(delegate)的作用是 。
9、UIViewController的didReceiveMemoryWarning方法在 时会调用。
10、MVC模式中,M是指 ,V是指 ,C是指 。
11、autorelase的作用是 。
12、 iOS后台运行是在 系统版本才开始支持。
13、代码:
- (void)setName:(NSString *)newName{
self.name = newName;
}
被调用的结果是 。
14、UDID是由 位十六进制字符串组成。
15、在KVC中通用的属性访问器方法是 和 。
16、关键字nil在Objective-C中表示 。
17、#import和#include的区别是 。
18、在Objective-C中是否支持运算符重载 ,能否在头文件里申明私有方法 。
19、在Instruments工具中,用于检查内存泄露的工具是 。
20、在iOS开发环境下,后缀为.a的文件又叫做 。
二、单选题(20题)
1、在Objective-C中,类的成员变量默认被申明为: ( )
A:@private B:@protected C:@public D:@package
2、iPhone、iPad、iTouch中使用的架构是 ( )
A:arm B:i386 C:x86 D:IA-32
3、下面哪个类在iPhone应用程序开发时不能使用 ( )
A:UITabViewController B:UINavigationController C:UISplitViewController
D:UITableViewController
4、关于Objective-C++中的异常处理,下面说法最正确的是 ( )
A:Objective-C不支持异常处理
B:在Objective-C++中,Objective-C的异常处理能够捕获C++的异常
C:在Objective-C++中,Objective-C的异常处理不能捕获到C++的异常
D:在Objective-C++中,Objective-C和C++的异常处理可以相互捕获异常
5、在对象的dealloc方法中,关于[super dealloc];语句说法正确的是 ( )
A:[super dealloc];有没有没有关系
B:[super dealloc];应该放在dealloc方法内的第一行
C:[super dealloc];应该放在dealloc方法内的最后一行
D:[super dealloc];位置无所谓,只要在dealloc方法里有就可以
6、下面关于方法:[[[object method1] method2] method3:[object method4]];中的method调用顺序是 ( )
A: 1 2 3 4 B: 1 2 4 3 C:4 1 2 3 D: 4 3 2 1
7、iOS开发中,HTTPS通讯是在什么位置来保障安全性 ( )
A:NSURLRequest方法里 B: NSURLRequest代理方法里
C:NSURLConnection方法里 D:NSURLConnection代理方法里
8、关于NSURLConnection同步通讯和异步通讯,下面说法正确的是 ( )
A: 同步通讯是指发送数据后,不等接收方回应,接着发下一个数据
B: 异步通讯时会阻塞当前线程
C: 发送同步通讯时,系统会自动创建一个单独的线程
D:一般不在主线程中使用同步通讯,因为会引起主线程阻塞
9、下面方法中,那一个方法没有创建新的线程 ( )
A: + (void)detachNewThreadSelector:(SEL)selector toTarget:(id)target withObject:(id)argument;
B: - (id)initWithTarget:(id)target selector:(SEL)selector object:(id)argument;
C: - (void)performSelectorInBackground:(SEL)aSelector withObject:(id)arg;
D: - (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)wait;
10、ARC(Automatic Reference Counting)模式下,下面哪个方法是未被禁用的: ( )
A:retain B:copy C:release D:autorelease
11、下面不是标准UIButton类型的是 ( )
A:UIButtonTypeRoundedRect B:UIButtonTypeContactAdd
C:UIButtonTypeRadio D:UIButtonTypeInfoLight
12、在给UIButton设置图片时,为了让图片适应按钮的大小,需要将按钮的contentMode设置为: ( )
A: UIViewContentModeScaleToFill B: UIViewContentModeScaleAspectFit
C: UIViewContentModeScaleAspectFill D: UIViewContentModeCenter
13、关于UIControl和UIView之间的关系,下面说法正确的是 ( )
A:UIControl继承于UIView B:UIView继承于UIControl
C:UIControl与UIView之间没有继承关系
D:UIControl和UIView都是直接继承于UIResponder
14、关于应用程序目录在更新、恢复和更新过程的变化,下面说法错误的是
( )
A:在备份过程中 /Library/Caches目录会被备份
B:在应用程序更新过程中,/Documents目录会被保留
C:在备份过程中/tmp目录将不会被备份
D:在应用程序更新过程中,/Library/Preferences目录会被保留
15、iPhone上,不能被应用程序直接调用的系统程序是 ( )
A:通讯录 B:短信 C:日历 D:邮件
16、下列UIView的方法中,哪一个在IOS5.0前后的系统调用机制不同( )
A: addSubView B:layoutSubView C:drawRect D:removeFromSuperView
17、构造UIImage的方法中,占用内存最大的哪个方法 ( )
A:imageNamed B:imageWithContentsOfFile C:imageWithData D:三者一样大
18、下列对象中不能调用initWithContentsOfFile方法进行构造的是 ( )
A:NSString B:NSXMLParser C:NSDictionary D:NSData
19、关于iCloud,下面说法错误的是 ( )
A:可以通过程序,将一个文档保存到用户的iCloud里
B: 用以通过程序,在iCloud里只保存一个键值对
C: 不能在模拟器上测试iCloud程序
D: 程序使用iCloud时,只需要使用相应的API即可,不需要额外的配置
20、应用程序大小超过多少时,只能通过WiFi从App Store上下载 ( )
A:5MB B:10MB C:20MB D:100MB
三、多选题(10题)
1、下面哪些方法是UITableView的delegate方法: ( )
A: - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section;
B: - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;
C: - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
D: - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;
2、下面哪些关键字会引起对象的引用计数(retainCount)加一: ( )
A:alloc B: init C:retain D:copy
3、在以.mm为拓展名的文件里,可以包含的代码有哪些? ( )
A:C B:Objective-C C:C++ D:Java
4、下面哪些类中使用到了单例(Singletion)模式? ( )
A:NSFileManager B:NSNotificationCenter C:UIApplication
D:UIDevice
5、可以通过代码进行写操作的文件或目录有? ( )
A:bundle目录 B:Documents目录 C:keychain D:SQLite
6、下面各数据类型中,能够直接放进NSArray数组的有: ( )
A:BOOL B:NSInteger C:NSString D:NSArray
7、Objective-C的快速枚举对比循环访问的优点,下面说法正确的是 ( )
A: 使用快速枚举效率更高 B: 语法更简洁
C:使用更安全 D:支持更多的数据类型
8、关于XML和JSON,下列说法正确的有: ( )
A:XML是一种类似HTML的语言,JSON是一种轻量级的数据交换格式。
B:XML是基于键值对(key/value)的结构
C:JSON有DOM和SAX两种解析方式
D:JSON和XML之间可以相互转换
9、在XCode上创建一个iOS工程,会自动添加进工程的Frameworks有哪些 ( )
A:UIKit.framework B:Foundation.framework
C:CoreGraphics.framework D:QuartzCore.framework
10、关于iOS程序后台运行,下面说法正确的有 ( )
A:程序可以在后台播放音乐
B:程序可以在后台收集用户位置信息
C:程序可以在后台运行VOIP服务
D:程序可以在后台发送HTTP通讯
答案:
一、填空题(20)
1、dealloc release(/autorelease)
2、申明属性及其特性 自动生成属性的访问器(getter/setter)方法
3、引用计数(retainCount)降为0
4、方法 属性和方法
5、100
6、@optional
7、NSObject
8、让一个对象实现另外一个对象的方法
9、系统内存不足
10、模型 视图 控制器
11、延后调用release方法(将对象放入自动释放池)
12、iOS4.0
13、程序死循环
14、40
15、valueForKey: setValue:forKey:
16、一个空对象
17、#import可以避免文件被多次引用
18、否(不支持) 否(不能)
19、Leaks
20、cocoa touch static library(static library/静态库)
二、单选题(20)
1、B 2、A 3、C 4、C 5、C 6、B 7、D 8、D 9、D 10、B 11、C
12、C 13、A 14、C 15、C 16、B 17、A 18、B 19、D 20、C
三、多选题(10)
1、CD 2、ACD 3、ABC 4、ABCD 5、BCD 6、CD 7、ABC 8、AD
9、ABC 10、ABC
展开阅读全文