①(语法篇)、《史上最全iOS八股文面试题》2022年,金三银四我为你准备了,iOS《1000条》笔试题以及面试题(包含答案)。带面试你过关斩将,(赶紧过来背iOS八股文)

这篇博客整理了iOS面试中涉及到的Objective-C语法、内存管理、类别、协议、Swift语言特性等多个方面的题目,包括Objective-C的alloc、retain、@property、@synthesize、协议实现、Block、Swift的枚举、结构体、类方法等知识点,帮助读者深入理解iOS开发中的关键概念。

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题 已更新

请添加图片描述

iOS面试1000题以及答案-笔试题-①语法篇

笔试题 613题

⭐️①、笔试题-语法篇(147题)

1.与alloc相对应的方法是:[单选题]

  • A、alloc
  • B、dealloc
  • C、release
  • D、autorelease

2.与retain相对应的方法是:[单选题]

  • A、alloc
  • B、dealloc
  • C、release/autorelease
  • D、copy

3.@property的作用是申明属性及其特性?:[单选题]

  • A、正确
  • B、错误

4.@synthesize的作用是自动生成属性的访问器(getter/setter)方法?:[单选题]

  • A、正确
  • B、错误

5.一个对象的dealloc方法在什么时候被调用:[单选题]

  • A、引用计数(retuanCount)降为-1
  • B、引用计数(retuanCount)降为1
  • C、引用计数(retuanCount)降为2
  • D、引用计数(retuanCount)降为0

6.分类(categoryes)能够向一个已有的类中添加:[单选题]

  • A、方法
  • B、属性
  • C、动作
  • D、协议

7.扩展(extensions)能够在当前类中增加[多选题]

  • A、动作
  • B、方法
  • C、属性
  • D、协议

8.协议(protocol)可以分为两种,其中以哪种关键字声明的协议可以不被实现:[单选题]

  • A、@optional
  • B、@required
  • C、@none
  • D、@userful

9.那个类是大多数Objective-C类继承的根类,它没有父类[单选题]

  • A、NSNull
  • B、NSInterger
  • C、NSString
  • D、NSObject

10.代理(delegate)的作用是让一个对象实现另一个对象的方法?[判断题]

  • A、正确
  • B、错误

11.autorelease的作用是:[多选题]

  • A、将对象放入自动释放池
  • B、将对象的引用计数减1
  • C、延后调用release方法
  • D、立即调用release方法

12.-(void)setName:(Nsstring)NewName{ self.name = NewName}:被调用的结果是:[单选题]

  • A、设置name属性的值
  • B、程序死循环
  • C、获取name属性的值
  • D、复制name属性的值

13.在KVC中通用的属性访问器方法是那两个:[多选题]

  • A、valueForKey:
  • B、setValue:forKey:
  • C、getValueForKey:
  • D、SetValue:

14.关键字nil在Objective-C中表示:[单选题]

  • A、一个空对象
  • B、一个空指针
  • C、一个空字符
  • D、一个空字节

15.#import#include的区别是: #import可以避免文件被多次引用?:[判断题]

  • A、正确
  • B、错误

16.在Objective-C是否支持运算符重载:[判断题]

  • A、正确
  • B、错误

17.在Objective-C中能否在头文件申明私有方法:[判断题]

  • A、可以
  • B、不可以

Objective-C关键字说明

Objective-C关键字说明
@private 作用范围只能在自身类
@protected 作用范围在自身类和继承自己的子类,什么都不写,默认是此属性。
@public 作用范围最大,在任何地方
@package 不会被导出到外部, 所以任何试图在这个framework外面访问这些成员变量的类都会得到一个链接错误的结果.

18.在Objective-C中,类的成员变量默认被申明为:[单选题]

  • A、@private 作用范围只能在自身类
  • B、@protected 作用范围在自身类和继承自己的子类,什么都不写,默认是此属性。
  • C、@public 作用范围最大,在任何地方
  • D、@package 不会被导出到外部, 所以任何试图在这个framework外面访问这些成员变量的类都会得到一个链接错误的结果.

19.关于Objective-C++中的异常处理,下面说法最正确的是:[单选题]

  • A、Objective-C不支持异常处理
  • B、在Objective-C++中,Objective-C的异常处理能够捕获C++的异常
  • C、在Objective-C++中,Objective-C的异常不能捕获到C++的异常
  • D、在Objective-C++中,Objective-C和C++的异常处理可以相互捕获异常

20.在对象的dealloc方法中,关于[super dealloc]:语法说法正确的是:[单选题]

  • A、[super dealloc];有没有都可以
  • B、[super dealloc];应该放在dealloc方法内的第一行
  • C、[super dealloc];应该放在dealloc方法内的最后一行
  • D、[super dealloc];位置无所谓,只要在dealloc方法里有就可以

21.下面关于方法:[[[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

22.ARC(Automatic Reference Counting)模式下,下面那个方法是未被禁用的:[单选题]

  • A、retain
  • B、copy
  • C、release
  • D、autorelease

23.下列对象中不能调用initWithContentsOfFile方法进行构造的是:[单选题]

  • A、NSString
  • B、NSXMLParser
  • C、NSDicttionary
  • D、NSData

24.下面哪些关键字会引用对象的引用计数(retainCount)加一:[多选题]

  • A、alloc
  • B、init
  • C、retain
  • D、copy

25.在以.mm为扩展名的文件里,可以包含的代码有哪些:[多选题]

  • A、C
  • B、Objective-C
  • C、C++
  • D、Swift

26.下面哪些类中使用到了单例(Singletion)模式:[多选题]

  • A、FileManager
  • B、NotificationCenter
  • C、Application
  • D、Device

27.下面个数据类型中,能够直接放进NSArray数组的有:[多选题]

  • A、BOOL
  • B、NSInteger
  • C、NSString
  • D、NSArray

28.Objective-C的快速枚举对比循环访问的优点,下面说法正确的是:[多选题]

  • A、使用快速枚举效率更高
  • B、语法更简洁
  • C、使用更安全
  • D、职场更多的数据类型

29.OC包含一个自定义的头文件应该使用:[单选题]

  • A、#include
  • B、#include<>
  • C、#import“”
  • D、#import<>

30.必须实现的协议方法使用那个关键字声明:[单选题]

  • A、@property
  • B、@interface
  • C、@required
  • D、@protocol

31.声明一个方法:提供Student对象数组按照学号升序排序的判断条件:[单选题]

  • A、- (NScomparisonResult)compareWithNumberForAscendSort:(Student)otherStudent
  • B、- (NSinteger)compareWithNumberForAscendSort:(Student)otherStudent
  • C、- (BOOL)compareWithNumberForAscendSort:(Student)otherStudent
  • D、- (int)compareWithNumberForAscendSort:(Student)otherStudent

32.OC语法中类的实例变量如果只可以被本类和其子类访问,需要下列那个修饰符:[单选题]

  • A、@public
  • B、@private
  • C、@protected
  • D、@friendly

33.关于集合描述不正确的是:[单选题]

  • A、所有的集合都可以添加元素。
  • B、集合分为可变集合、不可变集合。
  • C、数组,字典额NSSet这三种集合存储数据的方式不同。
  • D、所有集合都能保存id类型数据。

34.NSDictionary *dict = [NSDictionary dictionaryWithObject:@"a value" forKey:@"aKey"]; NSLog(@"%@",[dict objectForKey:@“aKey”]);[dict release];输出什么 :[单选题]

  • A、a value 在MacOS创建命令行项目 并且 设置 设置非ARC项目 是 会输出 a value
  • B、akey: a value
  • C、崩溃信息 在iOS工程里面 设置非ARC项目会崩溃
  • D、a vlaue : akey

35.向OC控制台输出一个字符串应该用 :[单选题]

  • A、NSLog()
  • B、Printf()
  • C、NSPrintf()
  • D、scanf()

36.名为print::的方法有几个传入参数 :

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宇夜iOS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值