版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
IOS工程师面试笔试题1、在Xcode中,需要编译混合Objective-C和C++的源码文件,需要将文件格式的后缀改为A..cB..cppC..mm(正确答案)D..m2、下面的http状态码中哪一个是状态码是标注请求不正确地:A.302是请求链接错误或者找不到服务器。(正确答案)B.500以上是服务器错误。C.200以上是正确。D.100以上是请求接受成功。3、下面关于Objective-C内存管理的描述错误的是A.当使用ARC来管理内存时,代码中可以出现autorelease(正确答案)B.autoreleasepool在drain的时候会释放在其中分配的对象C.当使用ARC来管理内存时,在线程中大量分配对象而不用autoreleasepool则可4、使用imageNamed方法创建UIImage对象时,与普通的init方法有什么区别?A.没有区别,只是为了方便B.imageNamed方法只是创建了一个指针,没有分配其他内存C.imageNamed方法将图片加载到内存中后不再释放(正确答案)D.imageNamed方法将使用完图片后立即释放5、下面对category描述不正确的是A.category可以添加新的方法B.category可以删除修改之前的方法(正确答案)C.将类的实现分散到多个不同文件或多个不同框架中D.创建对私有方法的前向引用6、多线程中栈与堆是公有的还是私有的A.栈公有,堆私有B.栈公有,堆公有C.栈私有,堆公有(正确答案)D.栈私有,堆私有7、单例类NSNotificationCenter提供信息广播通知,它采用的是观察者模式的通知机制。A.对(正确答案)B.错8、判断是否为iPad设备语句是?A.if([[UIDevicecurrentDevice]userInterfaceIdiom]==UIUserInterfaceIdiomPhone){...}B.if([[UIDevicecurrentDevice]userInterfaceIdiom]!=UIUserInterfaceIdiomPhone){...}C.if([[UIDevicecurrentDevice]userInterfaceIdiom]==UIUserInterfaceIdiomPad){…}(正确答案)9、使用Xcode创建工程时,支持同时创建的版本管理库是A.SubversionB.MercurialC.Git(正确答案)D.ConcurrentVersionsSystem10、UIEdgeInsetsedgeInsets=UIEdgeInsetsMake(10,10,10,10);
@synchronized(edgeInsets){
}关于以上代码,正确的说法A.写在大括号内部的代码,会保证多线程访问edgeInsets不出错B.UIEdgeInsetsMake是构造UIEdgeInsets数据类型的方法C.UIEdgeInsets本质上是OC中的基本数据类型D.代码错误(正确答案)11、添加子视图的方法中,是下列哪个面向对象特性的体现?A.封装B.继承C.多态(正确答案)D.协议12、优秀的程序设计,应遵循下列哪个准则?A.高内聚,高耦合B.高内聚,低耦合(正确答案)C.低内聚,高耦合D.低内聚,低耦合13、为应用程序创建window的时候,以下哪个是声明成属性的必要原因?A.类的内部可以访问。B.类的外部可以访问。(正确答案)C.延长生命周期。D.拷贝window副本。14、以下那个属性可以导致view向右向下平移10个point?A.simpleView.transform=CGAffineTransformMake(10,10,1,1,0,0);B.simpleView.transform=CGAffineTransformMake(1,1,10,10,0,0);C.simpleView.transform=CGAffineTransformMake(1,0,1,0,10,10);D.simpleView.transform=CGAffineTransformMake(1,0,0,1,10,10);(正确答案)15、以下是定义cell重用标识符的语句:staticNSString*constreuseIdentifier=@"Cell";关于以上代码说法正确的是?A.static是为了修饰变量是全局区域的B.static是为了修饰变量是可以被其它类引用为全局变量的C.const是为了修饰reuseIdentifier指针本身不可以改变(正确答案)D.const是为了修饰reuseIdentifier指针指向的内容不可以改变16、Block作为属性在ARC下应该使用的语义设置为?A.retainB.weakC.strong(正确答案)D.copy(正确答案)17、下列哪项不属于数据持久化?A.属性列表(正确答案)B.CoreDataC.NSUserDefaultsD.归档和反归档18、下面哪个类可以创建可变对象A.NSStringB.NSArrayC.NSMutableDictionary(正确答案)D.NSSet19、Objective-C声明一个类所要用到的编译指令是A.@interfaceSomeClass(正确答案)B.@protocolSomeClassC.@implementationSomeClassD.@autoreleaseSomeClass20、下面哪个方法不属于NSObject的内省(Introspection)方法A.init(正确答案)B.isKindOfClassC.responseToSelectorD.isMemberOfClass21、使用protocol时,声明一组可选择实现与否的函数,需要在声明的前一行加上:A.@requiredB.@optional(正确答案)C.@interfaceD.@protocol22、需要在手动管理内存分配和释放的Xcode项目中引入和编译用ARC风格编写的文件,需要在文件的CompilerFlags上添加参数:A.-sharedB.-fno-objc-arcC.-fobjc-arc(正确答案)D.-dynamic23、下面关于#import和#include的描述正确的是A.#import是#include的替代指令,防止重复引用(正确答案)B.#import和#include不可以混合使用C.#import只用于引用Objective-C的文件,#include只用于引用C和C++的文件D.#import和#include的使用效果完全相同24、@implementationxxx
…
…
-(void)setVar:(int)i{
self.var=i;
}上面的代码问题在哪?A.应该将varsynthesizeB.调用会出现死循环(正确答案)C.正常D.返回值错误25、下面那个方法可以比较两个NSString*str1,*str2的异同A.if(str1=str2)xxx;B.if([str1isEqualToString:str2])xxx;(正确答案)C.if(str1&&str2)xxx;D.if([str1length]==[str2length])xxx;26、下面哪个不属于对象数据序列化方法A.JSONB.PropertyListC.XMLD.HTTP(正确答案)27、在UIKit中,frame与bounds的区别是A.frame是bounds的别名B.frame是bounds的继承类C.frame的参考系是父视图坐标,bounds的参考系是自身的坐标(正确答案)D.frame的参考系是自身坐标,bounds的参考系是父视图的坐标28、Objective-C有私有方法吗?有私有变量吗?A.有私有方法和私有变量B.没有私有方法也没有私有变量C.没有私有方法,有私有变量(正确答案)D.有私有方法,没有私有变量29、下面关于线程管理错误的是A.GCD所用的开销要比NSThread大B.可以在子线程中修改UI元素(正确答案)C.NSOperationQueue是比NSthread更高层的封装D.GCD可以根据不同优先级分配线程30、NSTimer*myTimer=[NSTimertimerWithTimeInterval:1.0target:selfselector:@selector(doSomeThing:)userInfo:nilrepeats:YES];
[myTimerfire]上面代码的作用是让doSomeThing函数每隔1秒被调用1次。请问哪里有问题A.没有将timer加入runloop(正确答案)B.doSomeThing缺少参数C.忘记传递数据给userInfoD.myTimer对象未通过[[myTimeralloc]init]方法初始化31、UIViewController在显示过程中,各个方法的调用顺序是A.init->viewDidLoad->viewDidAppear->viewDidUnload(正确答案)B.init->viewDidAppear->viewDidLoad->viewDidUnloadC.init->viewDidLoad->viewDidUnload->viewDidAppearD.init->viewDidAppear->viewDidUnload->viewDidLoad32、一个类的delegate(代理)的作用不正确的是A.delegate中的函数在其他类中实现B.主要用于不同类型的对象之间一对一传递消息C.没有指派则不会触发D.可以一个对象的delegate指派给多个其他类型的对象(正确答案)33、在没有navigationController的情况下,要从一个ViewController切换到另一个ViewController应该A.[self.navigationControllerpushViewController:nextViewControlleranimated:YES];B.[self.viewaddSubview:nextViewController.view];C.[selfpushViewController:nextViewControlleranimated:YES];D.[selfpresentModalViewController:nextViewControlleranimated:YES];(正确答案)34、什么是keywindow?A.App中唯一的那个UIWindow对象B.可以指定一个key的UIWindowC.可接收到键盘输入等事件的UIWindow(正确答案)D.不可以隐藏的那个UIWindow对象35.及时聊天app不会采用的网络传输方式是AUDPBTCPCHttpDFTP(正确答案)36.下列技术不属于多线程的是ABlock(正确答案)BNSThreadCNSOperationDGCD37.线程和进程的区别不正确的是A进程和线程都是由操作系统所体会的程序运行的基本单元B线程之间有单独的地址空间(正确答案)C进程和线程的主要差别在于它们是不同的操作系统资源管理方式D线程有自己的堆栈和局部变量38.堆和栈的区别正确的是A对于栈来讲,我们需要手工控制,容易产生memoryleak。B对于堆来说,释放工作由编译器自动管理,无需我们手工控制C在Windows下,栈是向高地址扩展的数据结构,是连续的内存区域,栈顶的地址和栈的最大容量是系统预先规定好的。D对于堆来讲,频繁的new/delete势必会造成内存空间的不连续,从而造成大量的碎片,使程序效率降低。(正确答案)39.下列回调机制的理解不正确的是A目标动作对:当两个对象之间有⽐比较紧密的关系时,如视图控制器与其下的某个视图。B代理:也叫委托,当某个对象收到多个事件,并要求同一个对象来处理所有事件时。委托机制必须依赖于某个协议定义的⽅方法来发送消息。(正确答案)C通告机制:当需要多个对象或两个⽆无关对象处理同一个事件时。DBlock:适⽤于回调只发⽣生一次的简单任务。40.对于runloop的理解不正确的是A每一个线程都有其对应的RunLoopB默认非主线程的RunLoop是没有运行的C在一个单独的线程中没有必要去启用RunLoop(正确答案)D可以将NSTimer添加到runloop中41.UITableView中cell的复用是由几个数组实现的A1B2(正确答案)C3D3或442.点击Button响应链中最终得到响应的是AWindowBApplication(正确答案)CAppDelegateDUIViewController43下面说法不正确的是Areadwrite是可读可写特性;需要生成getter方法和setter方法时Breadonly是只读特性只会生成getter方法不会生成setter方法;不希望属性在类外改变Cassign是赋值特性,和weak一样,可用weak代替;(正确答案)Dretain表示持有特性,setter方法将传入参数先保留,再赋值,传入参数的retaincount会+1;44对于语句NSString*obj=[[NSDataalloc]init];obj在编译时和运行时分别时什么类型的对象?A编译时是NSString的类型;运行时是NSData类型的对象(正确答案)B编译时是NSObject的类型;运行时是NSData类型的对象C编译时是N
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 深入解析技术服务合同范本模板
- 保安服务提供商合同
- 延期还款协议
- 物资招标文件写作技巧
- 水利建设合同协议
- 货品购买合同格式
- 专业合同协议合规管理方法服务
- 联营共营合同范例
- 心理辅导与咨询服务
- 节能改造合同能源
- 2023年12个月院感培训计划表
- 《延迟焦化介绍》课件
- 起重机械安全技术规程(TSG-51-2023)宣贯解读课件
- 2024宫腔镜检查ppt课件完整版
- 师德师风自评情况对照《新时代高校教师职业行为十项准则》
- 经络脉学心悟
- 2023年电池Pack结构设计工程师年度总结及下年规划
- 肛肠科常见疾病中医诊疗规范诊疗指南2023版
- 水环境综合治理服务方案(技术标)
- 2022年湖南工商大学数据科学与大数据技术专业《计算机网络》科目期末试卷A(有答案)
- 2023《机械制造基础》机考真题库附答案
评论
0/150
提交评论