OC测试题
更新时间:2023-09-30 10:21:01 阅读量: 综合文库 文档下载
- oc测试推荐度:
- 相关推荐
OC测试题
一、选择题(共80题,每题1分)
1、不会立刻使引用计数器改变的是:_________ A、release B、alloc C、autorelease D、retain
2、在OC中类的接口声明关键字为:_________ A、@import B、@interface C、@implemention D、@protocol 3、
NSString *name = [[NSString alloc]initWithString:@\张三\
NSLog(@\上述代码打印结果是:_________ A、-1 B、0 C、1
D、2
4、下列选项中全部属于对象的是:_________ A、我的白色iPhone4s;Mac Mini B、狗;老虎
C、邻居家的猫咪“贝贝”;我的弟弟“张三” D、保时捷;犀利哥 5、
NSDictionary *dict = [NSDictionary
dictionaryWithObject:@\NSLog(@\[dict release];
控制台中打印的最后一条信息会是:_________ A、a value B、aKey : a value C、崩溃信息 D、a value : aKey
6、现有如下集合,能准确删除“张三”的代码是:NSMutableDictionary * peoples=[NSMutableDictionary dictionaryWithObjectsAndKeys:@\张三\左护法\李四\右使\唐sir\老大哥\答案_________
A、[peoples removeObjectForKey:@\左护法\
B、[peoples removeObject:@\张三\C、[peoples removeObjectAtIndex:0]; D、[peoples removeAllObjects];
7、关于类和对象的概念,下列属于对象的是:_________ A、奥迪A6 B、保龄球 C、世界冠军刘翔 D、西红柿
8、以下说法不正确的是:_________
A、nonatomic:提供多线程保护,提高性能,在没有使用多线程的编程中可以选择使用。
B、assign:属性默认值。说明设置器直接进行赋值,针对基础数据类型(NSInteger,CGFloat)和C数据类型(int, float, double, char)等等。
C、retain:此属性只用于obj-c的对象类型,对参数进行release旧值,再retain新值。
D、copy:此属性只对实现NSCopying协议的对象有效(NSString)。拷贝工作由copy方法执行。 9、
NSArray *array = [NSArray
arrayWithObjects:@\NSMutableSet *set = [[NSMutableSet alloc]init];
for(NSString *str in array){ [set addObject:str];}
NSLog(@\控制台打印的结果是:__________ A、4 B、5 C、6 D、7
10、经过下列哪种操作后需要使用release方法。答案________ A、delegate B、assign C、retain D、dealloc
11、声明一个方法:提供Student对象数组按照学号升序排列的判断条件:答案: A、
-(NSComparisonResult)compareWithNumberForAscendSort:(Student*)otherStudent B、
-(NSInteger)compareWithNumberForAscendSort:(Student*)otherStudent
C、-
(BOOL))compareWithNumberForAscendSort:(Student*)otherStudent
D、+(int)compareWithNumberForAscendSort:(Student 12、下列哪个选项不需要release方法: 答案:
A、[[NSString alloc]init];
B、[[NSString alloc] initWithString:@”hehe”]; C、[[NSArray arrayWithArray: arr1]; D、[[NSMutableDictionary alloc] init]; 13、OC中,所有类的根类是: 答案: A、NSObject B、NSDate C、NSCoding D、UIView
14、下列哪个选项与@synthesize配合使用: 答案: A、@end B、@interface C、@implementation D、@property
31、创建对象时,对象的内存和指向对象的指针分别分配在哪里: 答案: A、堆区,栈区 B、常量区,堆区 C、全局区,栈区 D、栈区,堆区
32、协议与委托的描述不正确的是: 答案:
A、委托是iOS的一种设计模式 B、协议里的方法默认是必须实现的
C、类接受了多个协议,这些协议写在父类后面的<>内,多个协议之间用“、”隔开
D、定义协议使用@protocol关键字 33、类何时调用dealloc方法: 答案:
A、[property release]后 B、[instance release]后 C、[super dealloc]时 D、当引用计数为0时. 34、
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[formatter setAMSymbol:@\[formatter setPMSymbol:@\
[formatter setDateFormat:@\ NSString * currentDate = [formatter stringFromDate:[NSDate date]]; NSLog(@\打印结果是: 答案:
A、2012-05-31 17:45:04 PM B、12-05-31 17:45:04 C、2012-05-31 17:45:04 D、12-05-31 05:45:04 PM 35、NSRange的成员变量有: 答案:
A、location,length B、width,height C、location,height D、length,width
36、现有自定义类Student,下列选项中Student类的便利构造器编写正确的是:
答案
A、-(id) initWithName:(NSString *) newName{ Student * stu = [[Student alloc] init]; stu.Name = newName; return stu;}
B、+(id) studentWithName:(NSString *) newName{ Student * stu = [[Student alloc] init]; stu.Name
= newName; return stu;}
C、+(id) studentWithName:(NSString *) newName{ Student * stu = [[Student alloc] init]; stu.Name
= newName; [stu release]; return stu;}
D、+(id) studentWithName:(NSString *) newName{ Student * stu = [[Student alloc] init]; stu.Name
= newName; [stu autorelease]; return stu;}
37、自定义一个Person类,下面哪个选项是规范的便利构造器声明方式:
答案:
A、-(id)personWithName:(NSString *)theName; B、-(id)personwithName:(NSString *)theName; C、+(id)personwithName:(NSString *)theName; D、+(id)personWithName:(NSString *)theName; 38、下列代码正确的输出结果是:NSString * urlStr = @\www.lanou3g.com
\[urlStr substringWithRange:range];NSLog(@\答案: A、lan B、lanou3g C、www.lan D、ou3g
39、在OC中扩展类的方法的形式不包括: 答案: A、继承 B、多态 C、类目 D、延展
40、关于KVC的描述正确的是: 答案:
A、KVC是指\B、是一种间接访问对象的属性的机制。 C、只能访问对象的属性。
D、当对象的属性值改变时,我们能收到一个通知。 41、以下说法正确的是: 答案:
A、求数组的内容的个数用length方法 B、字典是根据其位置来索引数据的 C、协议中定义的方法默认是必须实现的 D、定义类目必须要拿到自己类的源代码
42、简单类型的成员比如:int类型成员在使用@property()时,括号中应使用: 答案: A、assign B、copy C、retain D、auto 43、下列代码:
@property(nonatomic,assign)id
A、是说myObject是Painting分类的一部分 B、是说myObject遵从于Painting分类
C、是说myObject遵从于Painting协议 D、不是合法的Objective-C语法格式 44、内存管理的关键字描述错误的是: 答案:
A、retaincount是指对象的引用计数。 B、retain关键字可以增大对象的引用计数。
C、release可以减小对象的引用计数,但autorelease不可以 D、dealloc方法不能直接调用
45、下面程序段的输出结果是什么:NSMutableArray * arr1 = [[NSMutableArray alloc]
initWithObjects:@\[arr1 addObject:@\
[arr1 replaceObjectAtIndex:2 withObject:@\NSLog(@\答案: A、0,1,2,3 B、1,2,3,0 C、1,3,3,0 D、0,3,2,3
46、下列有效的键路径是: 答案:
A、[foo valueForKeyPath:@”1SomeMember”]
B、[foo valueForKeyPath:@”someMember.someAttribute”] C、[foo
valueForKeyPath:@”SOMEMEMBER@someAttibute”] D、[foo valueForKeyPath:@”some Member”]
47、有一个类Student,要求实现:定义一个实例初始化方法,初始化方法需要传入名字和性别: 答案:
A、-(id)initWithName:(NSString *)name sex:(NSString *)sex{ if (self){ self.name
= name; self.sex = sex; } return self;}
B、-(id)initWithName:(NSString *)name sex:(NSString *)sex{ if (self = [super init]) { self.name = name; self.sex = sex; } return self;}
C、-(id)initWithName:(NSString *)name sex:(NSString *)sex{ if (!self) { self.name
= name; self.sex = sex; } return self;}
D、-(id)initWithName:(NSString *)name sex:(NSString *)sex{ if (self = [super init]) { self.name = name; self.sex = sex; }}
48、下面哪个选项对集合的描述是正确的: 答案:
A、集合内不能存不同类型的对象 B、集合内可以存整型的数
C、字典内键值可以相同,但是每个键值对应的对象必须不同
D、集合内只能存对象
49、NSString 和 NSMutableString的关系和区别描述不正确的是:答案:
A、NSString是不可变字符串,即本身内容不能被改变。 B、NSMutableString是可变字符串,即本身内容可修改。 C、NSMutableString是NSString的子类。 D、NSString和NSMutableString没有任何关系。 50、下面哪个选项无内存问题的: 答案:
A、-(NSString *)description{ NSString * str = [[NSString alloc] initWithFormat:@\B、-(NSString *)description{ NSString * str = [[NSString alloc] initWithFormat:@\release]; return str;}
C、-(NSString *)description{ NSString * str = [[NSString alloc] initWithFormat:@\autorelease]; return str;}
D、-(NSString *)description{ NSString * str = [NSString stringWithFormat:@\autorelease];}
51、关于NSSet描述正确的有: 答案:
A、NSSet可以存放任何数据类型的数据。 B、NSSet存放数据是无序的。 C、NSSet可以通过下标获取数据。 D、NSSet存放的数据是有序的。
52、下列哪个选项不能作为property的可选属性: 答案: A、alloc B、retain C、atomic D、strong
53、下面哪个选项是正确的: 答案:
A、用继承可以扩展一个类,要调用扩展的方法,既可以用父类,也可以用子类
B、用类目可以扩展一个类,可以直接用该类或该类的实例对象,去调用该类目扩展的方法 C、延展就是类目
D、可以在一个类的外部,调用这个类延展的方法 54、以下对类的描述不正确的是: 答案:
A、类的接口部分可以包含实例变量、属性和方法 B、可以把声明和实现都放到.h文件中
C、一对文件(Person.h Person.m)只能定义一个类 D、类比较抽象,对象比较具体
55、声明一个返回值为NSArray,并且带两个字符串对象的BLOCK类型变量: 答案:
A、NSArray (*aBlock)(NSString * str,NSString *str2) B、NSArray ^(*aBlock)(NSString * str,NSString *str2) C、NSArray (^aBlock)(NSString * str,NSString *str2) D、NSArray *(^aBlock)(NSString * str,NSString *str2)
答案:
1-5 CBACC 6--10 ACAAA 11-15 ACADA 21-25 BCDBD 31-35 ACDDA 41-45 CACCB 51-55BABCD
16--20 CABCD 26--30 CDCDB
36-40 DDBBB
46-50 BBDDC
正在阅读:
OC测试题09-30
小学十佳师德标兵事迹材料(多篇)03-08
计算机网络2016作业答案04-19
晋升助理工程师个人见习期工作总结04-26
单片机原理与应用 赵德安 习题答案11-19
九九重阳说敬老02-12
年产170万m2彩钢夹芯板生产项目环评报告 - 图文02-01
PLKDY32-48ZB型系列移动式自摆电控泡沫水两用消防炮03-22
物资领用管理制度12-06
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 测试题
- 地理八年级下册《陕西省》学案
- 贫困户一户一档资料目录(2016年更新版)
- A3000过程控制实验指导 第四章
- 南通大学国际商务谈判简答期末考试 通大二手
- 移动L1认证考试代维集客题库三
- 旅游管理综合课试题答案
- java题库—判断
- 数控原理与系统试题及答案
- 云南楚雄大荒山风电场进场道路改造工程施工图设计招标文件
- 音乐学科教学论教学大纲(音乐学)2011版
- 水映锦城动迁小区40#住宅楼等工程第一次工地会议纪要(修改稿)
- 结构化学第五章习题
- 马菁汝简历 - 图文
- 2018年中国水泥行业调研及分析报告目录
- 社会纪实摄影 - 图文
- 体育测试答案
- 2016年数学花园探秘四年级组初试试卷D
- 对比分析
- 大学计算机信息基础课程复习题
- 牛栏江镇总体规划