iOS面试题 一共分为
笔试题
和面试题
两部分笔试题
一共分为10个 总共613题面试题
一共400题
笔试题 一个10个系列 分别为
[①(语法篇) 共147题 已更新]
[②(常识篇) 共72题 已更新]
[③(界面篇) 共83题 已更新]
[④(iOS篇) 共52题 已更新]
[⑤(操作篇) 共68题 已更新]
[⑥(数据结构篇) 共23题 已更新]
[⑦(多线程篇) 共60题 已更新]
[⑧(网络篇) 共22题 已更新]
[⑨(多媒体篇) 共59题 已更新]
[⑩(安全篇) 共27题 已更新]面试题
一共分为3个 总共400题
[⑪(面试篇 1/3) 共127题 已更新]
[⑪(面试篇 2/3) 共137题 已更新]
[⑪(面试篇 3/3) 共136题 已更新]
@TOC
笔试题 613题
⭐️②、笔试题-常识篇(72题)
1.iOS开发者账号中,最多能够添加多少台设备号
:[单选题]
- A、1009
- B、100
- C、99
- D、999
2.最多可以为每个内购项目
创建多少个促销代码
:[单选题]
- A、1009
- B、100
- C、99
- D、999
3.MVC模式的M
、V
、C
分别指:[单选题]
- A、模态、视图、控制器
- B、模型、视图、控制器
- C、模型、控制器。视图
- D、视图、模型、控制器
4.UDID
是由多少位十六进制
字符串组成?:[单选题]
- A、20
- B、30
- C、40
- D、50
5.在iOS开发环境下,后缀.a
的文件又叫做:[单选题]
- A、可执行文件
- B、类文件
- C、头文件
- D、静态库
6.iPhone
、iPad
、iTouch
使用的架构
是:[单选题]
- A、arm
- B、i386
- C、x86
- D、IA-32
7.关于应用程序目录
在更新、恢复和更新过程的变化
,下面说法错误的是:[单选题]
- A、在备份过程中 /Library/Caches目录会被备份
- B、在应用程序更新过程中,/Documents目录会被保留
- C、在北美过程中/tmp目录将不会被备份
- D、在应用程序更新过程中,/Library/Preferences目录会被保留
8.iPhone上,不能
被应用程序直接调用
的系统程序是:[单选题]
- A、通讯录
- B、短信
- C、日历
- D、邮件
9.应用程序大小超过
多少时,只能通过WiFi
从App Store
下载:[单选题]
- A、5M
- B、10MB
- C、20MB
- D、100MB
10.可上传至App Store
的App
应用最大体积
是多少?:[单选题]
- A、4GB
- B、3GB
- C、2GB
- D、8GB
11.关于XML
和JSON
,下列说法正确的有:[多选题]
- A、XML是一种类似HTML的语言,JSON是一种轻量级的数据交换格式
- B、XML是基于键值对(key/value)的结构
- C、JSON有DOMSAX两种解析方式
- D、JSON和XML之间可以相互转换
12.在Xcode上创建一个iOS工程,会自动添加进工程的frameworks
有哪些:[多选题]
- A、UIKit.framework
- B、Foundation.framework
- C、CoreGraphics.framework
- D、CoreData.framework
13.面向对象的特性
不包括:[单选题]
- A、封装
- B、继承
- C、多态
- D、构造
14.以下哪些是Cocoa Touch框架
,用于数据管理
方法:[多选题]
- A、Core Data
- B、Webkit
- C、Core Location
- D、SQLite
15.内存管理
理解不正确的是:[多选题]
- A、程序A里有一段内存被成功申请完成之后,内存计数器就从0变成1(这个过程是alloc);
- B、程序B里要使用已存在内存,那么内存计数器从1变成2(这个过程是retain或者copy);
- C、紧接着程序A不需要这个内存了,那么程序A就把这个内存计数器减1(这个过程叫release);
- D、当系统发现这个内存计数器变为小于等于0.那么久调用垃圾回收程序把这段内存回收(这个过程叫dealloc);
16.MVC优点
不正确的是:[单选题]
- A、低耦合性
- B、高重用性和可适用性
- C、较低的生命周期成本
- D、代码高效率
17.Shell
中,将command1的输出
作为command2的输入
应该使用的命令是:[单选题]
- A、command1 && command2
- B、command1 > command2
- C、command1 & command2
- D、command1 | command2
18.下面哪项不是动态语言
的特性:[单选题]
- A、在运行时替换一个类
- B、在运行时动态加载lib文件
- C、在运行时修改对象中的方法
- D、在运行时增加对象的方法
19.下面哪个不属于对象数据序列化
方法:[单选题]
- A、JSON
- B、Property List
- C、XML
- D、HTTP
20.下列不属于iOS存储方式
的是:[单选题]
- A、FileManager
- B、归档
- C、SQLite
- D、CoreData
21.IP Phone的原理是什么:[单选题]
- A、IPV4
- B、DHCP
- C、IPV6
- D、DNS
22.那个Xcode版本带来了Wireless Development
无线调试功能?:[单选题]
- A、Xcode6
- B、Xcode7
- C、Xcode8
- D、Xcode9
23.当开发者免费
加入Apple开发者计划,以下说法正确的是?:[多选题]
- A、无法使用beta版的iOS SDK
- B、可以使用beta版的iOS SDK
- C、无法向App Store发布你的产品
- D、可以向App Store发布你的产品
24.当开发者免费加入Apple开发者计划并支付年费
之后,以下说法正确的是?:[多选题]
- A、可以使用beta版的iOS SDK
- B、无法进行真机测试
- C、可以向App Store发布你的产品
- D、无法向App Store发布你的产品
25.关于加入付费的开发者计划
,以下说法正确的是?:[多选题]
- A、个人开发者账号,每年99美元,可以在App Store发布产品或在100个iOS设备上进行测试。
- B、公司开发者账号,每年99美元。可以在App Store发布产品或在100个iOS设备上进行测试。申请该类型的账号时.需要填写公司的邓白氏编码(®D-U-N-S® Number)
- C、企业开发者账号,每年299美元。可以在企业内部进行无设备数量限制的分发
- D、企业开发者账号同样可以在App Store中发布产品。
26.关于类的继承
,以下说法正确的是?:[多选题]
- A、继承是在一些通用类的基础上构造、建立和扩充新类的最有效的手段。
- B、继承简化了人们对事务的认识和描述。能清晰体现相关类之间的层次结构关系。
- C、继承提供了软件复用功能。能够减少代码的冗余度,增加程序的重复性。
- D、继承通过增加一致性,来减少模块间的接口和界面,大大增加了程序的易维护性。
27.NSObject
是一个根类,几乎所有的类都是从它派生
而来。但是根类并不拥有其他类都有的alloc
和init
方法?:[判断题]
- A、正确
- B、错误
28.UIResponder
可以让继承它的类响应移动设备的触摸事件,由于可能有多个对象响应
同一个事件,iOS将事件沿响应链
向上传递?:[判断题]
- A、正确
- B、错误
29.关于MVC模式
中的M、V、C三者之间的通信方式、以下描述正确的是?:[多选题]
- A、数据模型Model通过通知Notification和键值观察KVO机制与控制器Controller间接通信。
- B、控制器通过设置View的DataSource属性。设置视图的数据源。如UITableview。
- C、视图View通过动作Action,Targer向视图控制器ViewController报告事件的发生,例如用户点击了视图。
- D、视图View通过Delegate委托(代理),向视图控制器报告事件的发送。如UIAlertViewDelegate、UITextFieldDelegate。
30.以下哪些技术可以实现iOS的数据持久化
?:[多选题]
- A、Plist属性列表
- B、对象归档
- C、SQLite3
- D、Core Data
31.Core Data
支持哪些类型的持久化
数据存储方式
?:[多选题]
- A、SQLiteStore
- B、XMLStore
- C、BinaryStore
- D、InMemoryStore
32.iOS设备支持哪些定位
方式:[多选题]
- A、手机基站定位
- B、WIFI定位
- C、北斗卫星定位
- D、GPS定位
33.手机基站定位
特点是定位速度在几种定位
方式中是最快
的,并且耗电·最小·,知识误差范围比较大
:[判断题]
- A、正确
- B、错误
34.WIFI定位
的支持范围比基站定位
广:[判断题]
- A、正确
- B、错误
35.CPS定位的特点是耗电最多,定位速度也最慢。但是优点是定位的精度最高?:[判断题]
- A、正确
- B、错误
36.CLLocationManager
定位的哪种精度
常用于周边的酒店
、机场
等类型的应用:[单选题]
- A、KCCLocationAccuracyNearestTenMeters
- B、KCCLocationAccuracyHundredMeters
- C、KCCLocationAccuracyKilometer
- D、KCCLocationAccuracyBest
37.使用哪些工具可以进行地理编码
和反编码
:[单选题]
- A、CLLocationManagerDelegate
- B、CLLocationManager
- C、CLLocation
- D、CLGeocoder
38.在iOS设备中,陀螺仪
的主要用途
在哪些:[多选题]
- A、通过陀螺仪配合GPS设备,手机的导航能够达到前所未有的水准。
- B、和iPhone和iPad上的摄像头配合使用。增强拍摄时的防抖性。
- C、陀螺仪相当于一个立体的鼠标。所以经常被用在赛车、战机类的游戏中。可通过摇晃设备来控制赛车和战机的方向
- D、微信的摇一摇功能,通过摇晃手机可以匹配同一时段触发该功能的微信用户。
39.陀螺仪
主要包含那几个组件
?:[多选题]
- A、陀螺仪帧
- B、放置轴
- C、方向坐标系
- D、转子
40.加速计只能侦测物体的移动行为,并不具备精准侦测物体角度改变
的能力?:[判断题]
- A、正确
- B、错误
41.陀螺仪
可以侦测物体水平改变的涨停,但是无法计算物体移动
的激烈程度:[判断题]
- A、正确
- B、错误
42.在iOS开发中,陀螺仪
和加速计
的使用是通过哪个框架
实现的?:[单选题]
- A、Core Data
- B、Core Image
- C、Core Motion
- D、Core Location
43.CMMotionManager
对象的accelerometerUpdateInterval
属性的值为0.1,表示每秒钟更新多少次
的加速计
的状态?:[单选题]
- A、1
- B、10
- C、100
- D、1000
44.本地化
的资源文件
,在应用程序的Bundle
中,会根据语言的不同
分离成不同的文件吗?:[判断题]
- A、正确
- B、错误
45.开发者可以将项目中的每一个文本、图标和图形文件
等进行本地化处理
,但无法对音频、视频、Storeboard文件
进行本地化处理?:[判断题]
- A、正确
- B、错误
46.关于App Store,如果用户按年订阅。开发者第一年获得受益的70%
,如果第二年
继续购买订阅服务,开发者就可以获得85%的收益
?:[判断题]
- A、正确
- B、错误
47.在iTunes Connect管理平台,那个
项目可以提供展示应用程序的下载量、用户活跃度、用户地区分布、设备类型、程序版本类型
?:[单选题]
- A、我的App
- B、App分析
- C、销售和趋势
- D、用户和职能
48.描述应用程序的关键词
,可以用来帮助客户在App Store中搜索到精准的结果。它的长度限制在多少字符
以内?:[单选题]
- A、50
- B、100
- C、200
- D、500
49.NSFileManager
是用来管理
和操作
文件、目录
等文件系统相关联内容的类。它隶属于那个框架:[单选题]
- A、Foundation
- B、UIKit
- C、Core Data
- D、Core Motion
50.蓝牙
设备包含哪些工作状态
:[多选题]
- A、准备(standby)
- B、广播 (advvertising)
- C、监听扫描 (Scanning)
- D、已连接 (Connected)
51.蓝牙4.0
支持哪些iOS版本:[多选题]
- A、iOS4
- B、iOS5
- C、iOS6
- D、iOS7
52.当向App Store
上传IPA
文件时,每次上传IPA包的版本号
可以相同,但是Build号
不能相同:[判断题]
- A、正确
- B、错误
53.上传至App Store
的IPA
文件, 最大体积
是?:[单选题]
- A、1G
- B、2G
- C、4G
- D、8G
54.应用审核成功并发布
后,你将无法修改应用的分类
、名称
、截图
和关键字
?:[判断题]
- A、正确
- B、错误
55.应用审核成功并发布
后,你将无法修改应用的促销文字
、版权信息
?:[判断题]
- A、正确
- B、错误
56.如果您需要给苹果审核人员
写邮件
,可以使用中文书写
吗?:[判断题]
- A、可以
- B、不可以
57.下载Xcode
尽量别用迅雷
,迅雷有可能会提供包含后门
的Xcode
:[判断题]
- A、正确
- B、错误
58.iOS的系统架构
可以分为那几个层次
?:[多选题]
- A、核心操作系统层(Core OS layer)
- B、核心服务层 (Core Services layer)
- C、媒体层(Media layer)
- D、可触摸层 (Cocoa Touch layer)
59.如果App1
需要跳转
到App2
,可以使用以下哪种方式?:[单选题]
- A、URL Scheme
- B、Keychain
- C、UIPasteboard
- D、UIDocumentInteractionController
60.Core ML
机器学习框架
支持哪些平台:[多选题]
- A、iOS
- B、macOS
- C、tvOS
- D、watchOS
61.Core ML
支持哪些机器学习技术
?:[多选题]
- A、深度神经网络
- B、循环神经网络
- C、卷积神经网络
- D、支持向量机
62.Core ML
的已训练模型(trained model)
是指在对一组训练数据应用了某个机器学习算法后,所生成的一组结果吗?:[判断题]
- A、是
- B、不是
63.Core ML
支持哪些机器学习模型
:[多选题]
- A、Neural Network
- B、Three Ensemble
- C、Support Vector Machine
- D、Generalized Linear Model
64.Core ML
的运行需要哪种模式格式
:[单选题]
- A、.model
- B、.data
- C、.mlmodel
- D、.plist
65.以下哪项苹果推出的技术可以将自然语言
的字符串标记为单词
、确定词性
和词根
、划分出人名地名
和组织名称
、告诉你字符串使用的语言和语系?[单选题]
- A、Core Data
- B、NSLinguisticTagger
- C、SirKit
- D、Core Text
66.以下关于Predicate
谓词,描述正确的是:[多选题]
- A、能使用一般谓词的不要使用正则表达式,以提高程序的性能。
- B、尽量不使用嵌套,最好把条件拆分。
- C、字符串常量使用"和""是一样的
- D、关键字不区分大小写,比如: tip和TIP是一样的。
67.从在屏幕上点击你的app icon开始。到应用执行到main()方法
或者执行到applicationWillFinishLaunching
的过程中
,共执行
了哪些方法?:[多选题]
- A、dylib loading time 载入动态库。
- B、ebase/binding time 重构和绑定。
- C、ObjC setup time 在Objective-C的运行时(runtime),需要对类(class),类别(category)进行注册。
- D、initializer time 这一份指代的是执行 +initialize方法的时间。
68.以下关于代码注释
,说法正确的是:[多选题]
- A、最好的代码是不需要注释的 尽量通过合理的命名
- B、良好的代码把含义表达清楚 在必要的地方添加注释
- C、注释需要与代码同步更新。
- D、如果做不到命名尽量的见名知意的化。就可以适当添加一些注释或者mark
69.以下关于iOS Code Review
, 描述正确的是:[多选题]
- A、文件行数偏多,可以根据功能拆分为不同的文件,让每个类各司其职。
- B、代码风格统一,比如函数名后面大括号的位置,保持书写一致。
- C、分支 if else 尽量配对使用。保证逻辑完整。if里面尽量包含主要的处理逻辑。
- D、检查代码的雷鸣、变量的命名风格是否统一。
70.DateFormatter
这种比较消耗性能
的类,如果分配内存次数较多的话,需要做一个静态变量
,没必要每次都分配?:[判断题]
- A、正确
- B、错误
71.应用程序
在后台
一般可以运行
多久?:[单选题]
- A、10秒左右
- B、1分钟左右
- C、10分钟左右
- D、1小时左右
72.method swizzling
交换方法
有几种实现方式
:[多选题]
- A、利用 class_exchangeImplementations 交换两个方法的实现
- B、利用 class_replaceMethod 替换方法
- C、利用 method_exchangeImplementations 交换两个方法的实现
- D、利用 method_setImplementation 来直接设置某个方法的IMP