IOS选择题带答案.docx
- 文档编号:12327695
- 上传时间:2023-04-18
- 格式:DOCX
- 页数:13
- 大小:20.61KB
IOS选择题带答案.docx
《IOS选择题带答案.docx》由会员分享,可在线阅读,更多相关《IOS选择题带答案.docx(13页珍藏版)》请在冰豆网上搜索。
IOS选择题带答案
软件开发应试人员考试试题(Android)
姓名:
___________ 电话:
___________
以下信息有工作经验人员如实填写,应届毕业不填(时间从毕业参加工作算起)
从事Android开发时间____月
1.及时聊天app不会采用的网络传输方式是D
AUDPBTCPCHttpDFTP
2.下列技术不属于多线程的是A
ABlockBNSThreadCNSOperationDGCD
3.线程和进程的区别不正确的是B
A进程和线程都是由操作系统所体会的程序运行的基本单元
B线程之间有单独的地址空间
C进程和线程的主要差别在于它们是不同的操作系统资源管理方式
D线程有自己的堆栈和局部变量
4.堆和栈的区别正确的是D
A对于栈来讲,我们需要手工控制,容易产生memoryleak。
B对于堆来说,释放工作由编译器自动管理,无需我们手工控制
C在Windows下,栈是向高地址扩展的数据结构,是连续的内存区域,栈顶的地址和栈的最大容量是系统预先规定好的。
D对于堆来讲,频繁的new/delete势必会造成内存空间的不连续,从而造成大量的碎片,使程序效率降低。
5.下列回调机制的理解不正确的是?
?
?
B
A目标动作对:
当两个对象之间有?
比较紧密的关系时,如视图控制器与其下的某个视图。
?
?
?
?
?
?
?
B代理:
也叫委托,当某个对象收到多个事件,并要求同一个对象来处理所有事件时。
委托机制必须依赖于某个协议定义的?
方法来发送消息。
?
?
?
?
?
?
?
C通告机制:
当需要多个对象或两个?
无关对象处理同一个事件时。
?
?
?
?
?
?
?
DBlock:
适?
于回调只发?
生一次的简单任务。
6.对于runloop的理解不正确的是C
A每一个线程都有其对应的RunLoop
B默认非主线程的RunLoop是没有运行的
C在一个单独的线程中没有必要去启用RunLoop
D可以将NSTimer添加到runloop中
7.UITableView中cell的复用是由几个数组实现的B
A1B2C3D3或4
8.在线播放视频一般访问服务器中的类型文件A
AM3U8BflvCMP4Ddata
9.点击Button响应链中最终得到响应的是B
AWindowBApplicationCAppDelegateDUIViewController
10。
内存管理理解不正确的是B
A程序A里有一段内存被成功申请完成之后,内存计数器就从0变为1(这个过程是alloc);
B程序B里要使用已存在内存,那么内存计数器从1变为2(这个过程是retain或者copy);
C紧接着程序A不需要这个内存了,那么程序A就把这个内存计数器减1(这个过程是release);
D当系统发现这个内存计数器变为小于等于0,那么就调用垃圾回收程序把这段内存回收(这个过程是dealloc);
11断点续传需要在请求头中添加的控制续传最重要的关键字是A
ArangeBlengthCtypeDsize
12post传输的最大文件限制为C
A1GB2GC4GD8G
13MVC优点不正确的是D
A低耦合性
B高重用性和可适用性
C较低的生命周期成本
D代码高效率
1-10C语言&计算机基础
1、请看下面一段代码
staticint
a=1;
intmain(){
intb=2;
char*c=NULL;
c=(char*)malloc(100*sizeof(char));
return0;
}
请问访问a,b,c3种类型变量的效率从高到低依次是
A.cba
B.abc
C.acb
D.bca
(B)
2、下面四种内部排序算法中哪一种在最差情况下时间复杂度最高?
A.快速排序
B.冒泡排序
C.堆排序
D.归并排序
(B)
3、Shell中,将command1的输出作为command2的输入应该使用的命令是
A.command1&&command2
B.command1>command2
C.command1&command2
D.command1|command2
(D)
4、下面的数据结构中不属于线性结构的是
A.栈
B.链表
C.二叉树
D.线性表
(C)
5、在一个二叉树上,第5层最多可以有的节点数是A.2
B.8
C.16
D.32
(C)
6、在长度为n的线性表上进行顺序查找,在最糟糕的情况下需要的比较次数是
A.n
B.2n-1
C.2n
D.n^2
(A)
7、下面那项不是动态语言的特性
A.在运行时替换一个类
B.在运行时动态加载lib文件
C.在运行时修改对象中的方法
D.在运行时增加对象的方法
(B)
8、已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是
A.cedba
B.acbed
C.decab
D.deabc
(A)
9、以下多线程对int型变量x的操作,哪个不需要进行同步:
A.x=y
B.x++
C.++x
D.x=1
(D)
10、多线程中栈与堆是公有的还是私有的
A.栈公有,堆私有
B.栈公有,堆公有
C.栈私有,堆公有
D.栈私有,堆私有
(C)
11-20Objective-C&Xcode
11、在Xcode中,需要编译混合Objective-C和C++的源码文件,需要将文件格式的后缀改为
A..c
B..cpp
C..mm
D..m
(C)
12、Objective-C声明一个类所要用到的编译指令是
A.@interfaceSomeClass
B.@protocolSomeClass
C.@implementationSomeClass
D.@autoreleaseSomeClass
(A)
13、使用Xcode创建工程时,支持同时创建的版本管理库是
A.Subversion
B.Mercurial
C.Git
D.ConcurrentVersionsSystem
(C)
14、下面那个方法不属于NSObject的内省(Introspection)方法
A.init
B.isKindOfClass
C.responseToSelector
D.isMemberOfClass
(A)
15、使用protocol时,声明一组可选择实现与否的函数,需要在声明的前一行加上:
A.@required
B.@optional
C.@interface
D.@protocol
(B)
16、需要在手动管理内存分配和释放的Xcode项目中引入和编译用ARC风格编写的文件,需要在文件的CompilerFlags上添加参数:
A.-shared
B.-fno-objc-arc
C.-fobjc-arc
D.-dynamic
(C)
17、下面关于Objective-C内存管理的描述错误的是
A.当使用ARC来管理内存时,代码中不可以出现autorelease
B.autoreleasepool在drain的时候会释放在其中分配的对象
C.当使用ARC来管理内存时,在线程中大量分配对象而不用autoreleasepool则可能会造成内存泄露
D.在使用ARC
的项目中不能使用NSZone
(A)
18、下面关于#import和#include的描述正确的是
A.#import是#include的替代指令,防止重复引用
B.#import和#include不可以混合使用
C.#import只用于引用Objective-C的文件,#include只用于引用C和C++的文件
D.#import和#include的使用效果完全相同
(A)
19、下面的代码问题在哪?
@implementationxxx
…
…
-(void)setVar:
(int)i{
self.var=i;
}
A.应该将varsynthesize
B.调用会出现死循环
C.正常
D.返回值错误
(B)
20、下面那个方法可以比较两个NSString*str1,*str2的异同
A.if(str1=str2)xxx;
B.if([str1isEqualToString:
str2])xxx;
C.if(str1&&str2)xxx;
D.if([str1length]==[str2length])xxx;
(B)
21-30iOS
21、下面哪个不属于对象数据序列化方法A.JSON
B.PropertyList
C.XML
D.HTTP
(D)
22、在UIKit中,frame与bounds的区别是
A.frame是bounds的别名
B.frame是bounds的继承类
C.frame的参考系是父视图坐标,bounds的参考系是自身的坐标
D.frame的参考系是自身坐标,bounds的参考系是父视图的坐标
(C)
23、Objective-C有私有方法吗?
有私有变量吗?
A.有私有方法和私有变量
B.没有私有方法也没有私有变量
C.没有私有方法,有私有变量
D.有私有方法,没有私有变量
(C)
24、下面关于线程管理错误的是
A.GCD所用的开销要比NSThread大
B.可以在子线程中修改UI元素
C.NSOperationQueue是比NSthread更高层的封装
D.GCD可以根据不同优先级分配线程
(B)
25、下面代码的作用是让doSomeThing函数每隔1秒被调用1次。
请问哪里有问题
NSTimer*myTimer=[NSTimertimerWithTimeInterval:
1.0target:
selfselector:
@selector(doSomeThing:
)userInfo:
nilrepeats:
YES];
[myTimerfire]
A.没有将timer加入runloop
B.doSomeThing缺少参数
C.忘记传递数据给userInfo
D.myTimer对象未通过[[myTimeralloc]init]方法初始化
(A)
26、UIViewController在显示过程中,各个方法的调用顺序是
A.init->viewDidLoad->viewDidAppear->viewDidUnload
B.init->viewDidAppear->viewDidLoad->viewDidUnload
C.init->viewDidLoad->viewDidUnload->viewDidAppear
D.init->viewDidAppear->viewDidUnload->viewDidLoad
(A)
27、使用imageNamed方法创建UIImage对象时,与普通的init方法有什么区别?
A.没有区别,只是为了方便
B.imageNamed方法只是创建了一个指针,没有分配其他内存
C.imageNamed方法将图片加载到内存中后不再释放
D.imageNamed方法将使用完图片后立即释放
(C)
28、一个类的delegate(代理)的作用不正确的是
A.delegate中的函数在其他类中实现
B.主要用于不同类型的对象之间一对一传递消息
C.没有指派则不会触发
D.可以一个对象的delegate指派给多个其他类型的对象
(D)
29
、在没有navigationController的情况下,要从一个ViewController切换到另一个ViewController应该
A.[self.navigationControllerpushViewController:
nextViewControlleranimated:
YES];
B.[self.viewaddSubview:
nextViewController.view];
C.[selfpushViewController:
nextViewControlleranimated:
YES];
D.[selfpresentModalViewController:
nextViewControlleranimated:
YES];
(D)
30、什么是keywindow?
A.App中唯一的那个UIWindow对象
B.可以指定一个key的UIWindow
C.可接收到键盘输入等事件的UIWindow
D.不可以隐藏的那个UIWindow对象
——————————————————————————————————————————————————————————————————————————
-————————————————————————————————————————————————————————————————————————
31求以下程序段的输出inttest(intx,inty){x=x+y;returnx*y;}intmain(intargc,constchar*argv[]){@autoreleasepool{intx=3,y=10,z=test(x,y);NSLog(@"%d%d",x++,++z);}return0;}答案是A
A331B330C431D430
32求以下程序段的输出intfunc(intx){intcountx=0;while(x){countx++;x=x&(x-1);}returncountx;}intmain(intargc,constchar*argv[]){@autoreleasepool{NSLog(@"%d",func(2013));}return0;}答案:
D
A1B5C8D9
33下面说法不正确的是C
Areadwrite是可读可写特性;需要生成getter方法和setter方法时
Breadonly是只读特性只会生成getter方法不会生成setter方法;不希望属性在类外改变
Cassign是赋值特性,和weak一样,可用weak代替;
Dretain表示持有特性,setter方法将传入参数先保留,再赋值,传入参数的retaincount会+1;
34对于语句NSString*obj=[[NSDataalloc]init];obj在编译时和运行时分别时什么类型的对象?
A
A编译时是NSString的类型;运行时是NSData类型的对象
B编译时是NSObject的类型;运行时是NSData类型的对象
C编译时是NSData的类型;运行时是NSString类型的对象
D编译时是NSObject的类型;运行时是NSString类型的对象
35ObjectC中的线程下面描述不正确的是B
A使用NSThread创建、使用GCD的dispatch
B直接使用NSOperation,然后将其加入NSOperationQueue;
C在主线程执行代码,方法是performSelectorOnMainThread,
D如果想延时执行代码可以用performSelector:
onThread:
withObject:
waitUntilDone:
36下列不属于iOS存储方式的是A
ANSFileManagerB归档CSQLiteDCoreData
37IPPhone的原理是什么?
C
AIPV4BDHCPCIPV6DDNS
38类别的作用不正确的是D
A将类的实现分散到多个不同文件或多个不同框架中。
B
创建对私有方法的前向引用。
C向对象添加非正式协议。
?
继承可以增加,修改或者删除方法。
D不能添加属性
39对NSOperationQueue理解不正确的是D
A存放NSOperation的集合类
B可以设置最大并发数
C放进去的线程会自动执行
D用户需要管理放进去的线程执行顺序
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IOS 选择题 答案