IOS面試(選擇題)

1剑肯、

不會(huì)立刻使引用計(jì)數(shù)器改變的是:
答案:(C)
A捧毛、release //立即引用計(jì)數(shù)-1
B、alloc//引用計(jì)數(shù)+1
C让网、autorelease //出了釋放池之后才會(huì)起作用
D呀忧、retain//引用計(jì)數(shù)+1

2、

在OC中類的接口聲明關(guān)鍵字為:
答案:(B)
A溃睹、@import // 引入頭文件
B而账、@interface // 接口聲明
C、@implemention//實(shí)現(xiàn)部分聲明
D因篇、@protocol//協(xié)議

3泞辐、

NSString *name = [[NSString alloc]initWithString:@"張三"];
NSLog(@"%d",[name retainCount]);
上述代碼打印結(jié)果是:
答案:(A)
A、-1
B惜犀、0
C铛碑、1
D、2
//如果輸出時(shí)用的是%d,則使用initWithString不管@""中的內(nèi)容是什么,retainCount都是-1.
如果輸出時(shí)是%lu,則retainCount為整型最大數(shù) .
//如果使用的是initWithFormat,@""里邊為中文,則retainCount為1,如果@""里邊是其他,則retainCount為-1 .
//如果使用的是stringWithFormat,內(nèi)部會(huì)自動(dòng)調(diào)用便利構(gòu)造器中的alloc,打印結(jié)果跟編譯器有關(guān),有的編譯器打印出的結(jié)果不準(zhǔn)確,但是原理還是不變.

4虽界、

下列選項(xiàng)中全部屬于對(duì)象的是:
答案:(C)
A汽烦、我的白色iPhone4s;Mac Mini
B、狗;老虎
C莉御、鄰居家的貓咪“貝貝”;我的弟弟“張三”
D撇吞、保時(shí)捷;犀利哥
//寬泛指向的一定程度上還可以是一個(gè)類,因此,只有具體指向某一個(gè)對(duì)象的時(shí)候才能說(shuō)它是一個(gè)對(duì)象

5、

NSDictionary *dict = [NSDictionary dictionaryWithObject:@"a value" forKey:@"aKey"];
NSLog(@"%@",[dict objectForKey:@"aKey"]);
[dict release];
控制臺(tái)中打印的最后一條信息會(huì)是:
答案:(C)
A礁叔、a value
B牍颈、aKey : a value
C、崩潰信息
D琅关、a value : aKey
// 該程序前兩句沒(méi)有問(wèn)題,最后一句由于并沒(méi)有使用alloc開(kāi)辟,因此不必使用release自行釋放.

6煮岁、

現(xiàn)有如下集合,能準(zhǔn)確刪除“張三”的代碼是:NSMutableDictionary * peoples=[NSMutableDictionary dictionaryWithObjectsAndKeys:@"張三",@"左護(hù)法",@"李四",@"右使",@"唐sir",@"老大哥", nil];
答案:(A)
A、[peoples removeObjectForKey:@"左護(hù)法"];
B画机、[peoples removeObject:@"張三"];
C冶伞、[peoples removeObjectAtIndex:0];
D、[peoples removeAllObjects];

7步氏、

關(guān)于類和對(duì)象的概念响禽,下列屬于對(duì)象的是:
答案:(C)
A、奧迪A6
B荚醒、保齡球
C芋类、世界冠軍劉翔
D、西紅柿

8界阁、

以下說(shuō)法不正確的是:
答案:(A)
A侯繁、nonatomic:提供多線程保護(hù),提高性能铺董,在沒(méi)有使用多線程的編程中可以選擇使用巫击。
B、assign:屬性默認(rèn)值精续。說(shuō)明設(shè)置器直接進(jìn)行賦值坝锰,針對(duì)基礎(chǔ)數(shù)據(jù)類型 (NSInteger,CGFloat)和C數(shù)據(jù)類型(int, float, double, char)等等重付。
C顷级、retain:此屬性只用于obj-c的對(duì)象類型,對(duì)參數(shù)進(jìn)行release舊值确垫,再retain新值弓颈。
D、copy:此屬性只對(duì)實(shí)現(xiàn)NSCopying協(xié)議的對(duì)象有效(NSString)删掀∠杓剑拷貝工作由copy方法執(zhí)行。
// (A) nonatomic并不提供多線程保護(hù),atomic才提供

9披泪、

NSArray *array = [NSArray arrayWithObjects:@"1",@"2",@"3",@"4",@"2", nil];
NSMutableSet *set = [[NSMutableSet alloc]init];
for(NSString *str in array)
{  
[set addObject:str];
}
NSLog(@"%lu",[set count]);
[set release];
控制臺(tái)打印的結(jié)果是:
答案:(A)
A纤子、4 //set中不能存放重復(fù)的對(duì)象
B、5
C款票、6
D控硼、7

10、

經(jīng)過(guò)下列哪種操作后需要使用release方法艾少。
答案:(C)
A卡乾、delegate
B、assign
C缚够、retain//與release對(duì)應(yīng)
D幔妨、dealloc // 與alloc對(duì)應(yīng)

11鹦赎、

聲明一個(gè)方法:提供Student對(duì)象數(shù)組按照學(xué)號(hào)升序排列的判斷條件:
答案:(A)
A、-(NSComparisonResult)compareWithNumberForAscendSort:(Student*)otherStudent
B陶冷、-(NSInteger)compareWithNumberForAscendSort:(Student*)otherStudent
C钙姊、- (BOOL))compareWithNumberForAscendSort:(Student*)otherStudent
D、+(int)compareWithNumberForAscendSort:(Student*)otherStudent

12埂伦、

下列哪個(gè)選項(xiàng)不需要release方法:
答案:(C)
A、[[NSString alloc]init];
B思恐、[[NSString alloc] initWithString:@”hehe”];
C沾谜、[[NSArray arrayWithArray: arr1];
D、[[NSMutableDictionary alloc] init];
// 誰(shuí)污染誰(shuí)治理原則,只要開(kāi)辟空間就需要釋放

13胀莹、

OC中,所有類的根類是:
答案:(A)
A基跑、NSObject
B、NSDate
C描焰、NSCoding
D媳否、UIView

14、

下列哪個(gè)選項(xiàng)與@synthesize配合使用:
答案:(D)
A荆秦、@end
B篱竭、@interface
C、@implementation
D步绸、@property //在較早的編譯器中,需要使用@synthesize來(lái)讓編譯器自動(dòng)生成屬性所對(duì)應(yīng)的實(shí)例變量的setter\getter方法的實(shí)現(xiàn)部分 (現(xiàn)在的編譯器只需要聲明屬性@property就可以了)

15掺逼、

向Xcode控制臺(tái)輸出一個(gè)字符串應(yīng)該用:
答案:(A)
A、NSLog()
B瓤介、Printf()
C吕喘、NSPrintf()
D、scanf()

16刑桑、

必須實(shí)現(xiàn)的協(xié)議方法使用:關(guān)鍵字聲明.
答案:(C)
A氯质、@property
B、@interface
C祠斧、@required // 如果不寫,系統(tǒng)默認(rèn)的就是required
D闻察、@protocol

17、

NSMutableString * str = [[NSMutableString alloc] initWithFormat:@"123"];
NSLog(@"str = %p",str);
[str appendFormat:@"456"];
NSLog(@"str = %p",str);
上面代碼對(duì)字符串str進(jìn)行拼接后梁肿,2次打印的地址是否相同:
答案:(A)
A蜓陌、相同 // 可變字符串的操作是在原字符串的基礎(chǔ)上操作的,不生成新的字符串,因此拼接是在原字符串后直接拼接,地址不變.
B、不同
C吩蔑、隨機(jī)打印
D钮热、有時(shí)相同,有時(shí)不同

18烛芬、

Objective-C的代碼文件的后綴為:
答案:(B)
A隧期、.cpp //c++
B飒责、.m // OC
C、.pl //Perl語(yǔ)言程序的后綴
D仆潮、.c //c語(yǔ)言

19宏蛉、

下列說(shuō)法中錯(cuò)誤的是:
答案:(C)
A、Objective-C不用"函數(shù)調(diào)用",而用互相傳遞訊息.
B性置、Objective-C一個(gè)完整的類分為interface和implementation兩塊
C拾并、Objective-C對(duì)象使用new分配內(nèi)存,用delete釋放 // 使用alloc分配和dealloc釋放
D、Objective-C協(xié)議分為非正式協(xié)議和正式協(xié)議

20鹏浅、

NSArray *array = [NSArray arrayWithObjects:@"one", @"two", @"three",nil];
NSLog(@"%@",[array objectAtIndex:1]);
NSLog(@"%@",[array objectAtIndex:3]);
控制臺(tái)中打印的最后一條信息會(huì)是:
答案:(D)
A嗅义、one
B、two
C隐砸、three
D之碗、崩潰信息 // 最后一句數(shù)組越界了(只有三個(gè)對(duì)象)

21、

OC中布爾(BOOL)類型的變量的值只有:
答案:(B)
A季希、1/0
B褪那、YES/NO
C、true/false
D式塌、1/-1

22博敬、

Objective-C中包含一個(gè)自定義的頭文件應(yīng)該使用:
答案:(C)
A、#include "" // c中的自定義
B珊搀、#include<> // c中系統(tǒng)類庫(kù)
C冶忱、#import "" // OC自定義類
D、#import<>//OC系統(tǒng)類庫(kù)

23境析、

在OC中囚枪,類中成員變量的可見(jiàn)度(訪問(wèn)權(quán)限)不包括:
答案:(D)
A、@public
B劳淆、@protected
C链沼、@private
D、@optional //協(xié)議中用于可選方法

24沛鸵、

OC中的委托最好聲明成:
答案:(B)
A括勺、retain
B、assign
C曲掰、copy
D疾捍、readonly

25、

面向?qū)ο蟮奶匦圆话ǎ?答案:(D)
A栏妖、封裝
B乱豆、繼承
C、多態(tài)
D吊趾、構(gòu)造

26宛裕、

OC中與alloc相反的方法是:
答案:(C)
A瑟啃、release
B、retain
C揩尸、dealloc
D蛹屿、free

27、

用哪個(gè)關(guān)鍵字定義協(xié)議中必須實(shí)現(xiàn)的方法:
答案:(D)
A岩榆、@optional
B错负、@protected
C、@private
D勇边、不用寫關(guān)鍵字 // 默認(rèn)就是required

28湿颅、

下面哪些選項(xiàng)是屬性的正確聲明方式:
答案:(C)
A、@property(nonatomic,retain)NSString myString; // NSString *
B粥诫、@property(nonatomic,assign)NSString * myString;//assign用于修飾基本數(shù)據(jù)類型
C、@property(nonatomic,assign)int mynumber;
D崭庸、@property(nonatomic,retain)int mynumber;// int型用assign修飾

29怀浆、

對(duì)于Objective-C中的方括號(hào)“[]”的作用,下列說(shuō)法錯(cuò)誤的是:
答案:(D)
A、用于通知某個(gè)對(duì)象該做什么
B怕享、方括號(hào)內(nèi)第一項(xiàng)是對(duì)象,其余部分是你需要對(duì)象執(zhí)行的操作
C执赡、在Objective-C中通知對(duì)象執(zhí)行某種操作,稱為發(fā)送消息.(也叫調(diào)用方法)
D、方括號(hào)中可以為空 //不能為空

30函筋、

以下代碼執(zhí)行后沙合,person對(duì)象的retain count是多少:
Person * person = [[Person alloc] init];//alloc后引用計(jì)數(shù)+1
[person retain]; //retain后再+1
[person release];//release后-1
答案:(B)
A、0
B跌帐、1
C首懈、2
D、3

31谨敛、

創(chuàng)建對(duì)象時(shí),對(duì)象的內(nèi)存和指向?qū)ο蟮闹羔樂(lè)謩e分配在哪里:
答案:(A)
A最仑、堆區(qū)吟吝,棧區(qū) // 程序員能操作的只有堆內(nèi)存,因此開(kāi)辟空間只能在堆中
B梆奈、常量區(qū)清酥,堆區(qū)
C、全局區(qū)挽封,棧區(qū)
D、棧區(qū)燕差,堆區(qū)

32、

協(xié)議與委托的描述不正確的是:
答案:(C)
A徒探、委托是iOS的一種設(shè)計(jì)模式
B瓦呼、協(xié)議里的方法默認(rèn)是必須實(shí)現(xiàn)的
C、類接受了多個(gè)協(xié)議测暗,這些協(xié)議寫在父類后面的<>內(nèi)央串,多個(gè)協(xié)議之間用“磨澡、”隔開(kāi)//多協(xié)議的話應(yīng)該在<>中用","隔開(kāi)
D、定義協(xié)議使用@protocol關(guān)鍵字

33质和、

類何時(shí)調(diào)用dealloc方法:
答案:(D)
A稳摄、[property release]后
B、[instance release]后
C饲宿、[super dealloc]時(shí)
D厦酬、當(dāng)引用計(jì)數(shù)為0時(shí).

34、

NSDateFormatter * formatter = [[NSDateFormatter alloc] init]; 
[formatter setAMSymbol:@"AM"];
[formatter setPMSymbol:@"PM"];
[formatter setDateFormat:@"YY-MM-dd hh:mm:ss aaa"]; 
NSString * currentDate = [formatter stringFromDate:[NSDate date]]; NSLog(@"%@",currentDate);
打印結(jié)果是:
答案:(D)
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)
A、location,length //位置和長(zhǎng)度信息,表示從下標(biāo)為location開(kāi)始,往后數(shù)length個(gè)長(zhǎng)度
B车吹、width,height
C旋廷、location,height
D、length,width

36礼搁、

現(xiàn)有自定義類Student,下列選項(xiàng)中Student類的便利構(gòu)造器編寫正確的是:
答案:(D)
A目尖、-(id) initWithName:(NSString *) newName{  Student * stu = [[Student alloc] init];   stu.Name= newName;  return stu;}//初始化方法,不是便利構(gòu)造器
B馒吴、+(id) studentWithName:(NSString *) newName{  Student * stu = [[Student alloc] init];   stu.Name= newName;  return stu;}//沒(méi)有釋放過(guò)程
C、+(id) studentWithName:(NSString *) newName{  Student * stu = [[Student alloc] init];   stu.Name= newName;  [stu release];  return stu;}//release會(huì)立即-1
D瑟曲、+(id) studentWithName:(NSString *) newName{  Student * stu = [[Student alloc] init];   stu.Name= newName;  [stu autorelease];  return stu;}

37饮戳、

自定義一個(gè)Person類,下面哪個(gè)選項(xiàng)是規(guī)范的便利構(gòu)造器聲明方式:
答案:(D)
A洞拨、-(id)personWithName:(NSString *)theName;//排除A和B,因?yàn)槭?號(hào)方法
B扯罐、-(id)personwithName:(NSString *)theName;
C、+(id)personwithName:(NSString *)theName;//駝峰法命名,with要大寫
D烦衣、+(id)personWithName:(NSString *)theName;

38歹河、

下列代碼正確的輸出結(jié)果是:
NSString * urlStr = @" www.reibang.com";
NSRange range = NSMakeRange(4,7);
NSString *prefix = [urlStr substringWithRange:range];
NSLog(@"%@",prefix);
答案:(B)
A、.ji
B花吟、jianshu
C秸歧、www.jia
D、jian

39衅澈、

在OC中擴(kuò)展類的方法的形式不包括:
答案:(B)
A键菱、繼承
B、多態(tài)
C今布、類目//不能添加實(shí)例變量
D经备、延展//為對(duì)象添加私有實(shí)例變量和方法

40拭抬、

關(guān)于KVC的描述正確的是:
答案:(B)
A、KVC是指"Key-Value Observing"http://鍵值編碼Key-Value-Coding
B侵蒙、是一種間接訪問(wèn)對(duì)象的屬性的機(jī)制造虎。
C、只能訪問(wèn)對(duì)象的屬性蘑志。//也可以修改
D累奈、當(dāng)對(duì)象的屬性值改變時(shí),我們能收到一個(gè)通知急但。

41澎媒、

以下說(shuō)法正確的是:
答案:(C)
A、求數(shù)組的內(nèi)容的個(gè)數(shù)用length方法//用count,length是求字符串長(zhǎng)度的方法
B波桩、字典是根據(jù)其位置來(lái)索引數(shù)據(jù)的//字典中的存儲(chǔ)是無(wú)序的
C戒努、協(xié)議中定義的方法默認(rèn)是必須實(shí)現(xiàn)的
D、定義類目必須要拿到自己類的源代碼//不用拿到源代碼,只需在建立Category文件時(shí)指明為哪個(gè)類添加方法即可

42镐躲、

簡(jiǎn)單類型的成員比如:int類型成員在使用@property()時(shí),括號(hào)中應(yīng)使用:
答案:(A)
A储玫、assign
B、copy
C萤皂、retain
D撒穷、auto

43、

下列代碼:@property(nonatomic,assign)id<Painting>myObject;
答案:(C)
A裆熙、是說(shuō)myObject是Painting分類的一部分
B端礼、是說(shuō)myObject遵從于Painting分類
C、是說(shuō)myObject遵從于Painting協(xié)議//協(xié)議代理對(duì)象
D入录、不是合法的Objective-C語(yǔ)法格式

44蛤奥、

內(nèi)存管理的關(guān)鍵字描述錯(cuò)誤的是:
答案:(C)
A、retaincount是指對(duì)象的引用計(jì)數(shù)僚稿。
B凡桥、retain關(guān)鍵字可以增大對(duì)象的引用計(jì)數(shù)。
C蚀同、release可以減小對(duì)象的引用計(jì)數(shù)缅刽,但autorelease不可以 //autorelease也可以,只是在出了自動(dòng)釋放池后才-1
D、dealloc方法不能直接調(diào)用

45蠢络、

下面程序段的輸出結(jié)果是什么:
NSMutableArray * arr1 = [[NSMutableArray alloc] initWithObjects:@"1",@"2",@"3", nil];[arr1 addObject:@"0"];
[arr1 replaceObjectAtIndex:2 withObject:@"3"];
NSLog(@"%@",arr1);

答案:(B)

A拷恨、0,1,2,3

B、1,2,3,0//下標(biāo)為2的對(duì)象是@"3",替換的對(duì)象還是@"3"

C谢肾、1,3,3,0

D腕侄、0,3,2,3

46、

下列有效的鍵路徑是:
答案:(B)
A、[foo valueForKeyPath:@”1SomeMember”]
B冕杠、[foo valueForKeyPath:@”someMember.someAttribute”]
C微姊、[foo valueForKeyPath:@”SOMEMEMBER@someAttibute”]
D、[foo valueForKeyPath:@”some Member”]

47分预、

有一個(gè)類Student,要求實(shí)現(xiàn):定義一個(gè)實(shí)例初始化方法,初始化方法需要傳入名字和性別:
答案:(B)
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、

下面哪個(gè)選項(xiàng)對(duì)集合的描述是正確的:
答案:(D)
A凳干、集合內(nèi)不能存不同類型的對(duì)象//只要是對(duì)象就可以,但是不能存放重復(fù)的對(duì)象
B晴裹、集合內(nèi)可以存整型的數(shù)//只能是對(duì)象
C、字典內(nèi)鍵值可以相同救赐,但是每個(gè)鍵值對(duì)應(yīng)的對(duì)象必須不同//鍵值對(duì)應(yīng)的value可以相同
D涧团、集合內(nèi)只能存對(duì)象

49、

NSString 和 NSMutableString的關(guān)系和區(qū)別描述不正確的是:
答案:(D)
A经磅、NSString是不可變字符串泌绣,即本身內(nèi)容不能被改變。
B预厌、NSMutableString是可變字符串阿迈,即本身內(nèi)容可修改。
C轧叽、NSMutableString是NSString的子類仿滔。
D、NSString和NSMutableString沒(méi)有任何關(guān)系犹芹。//有繼承關(guān)系

50、

下面哪個(gè)選項(xiàng)無(wú)內(nèi)存問(wèn)題的:
答案:(C)
A鞠绰、-(NSString *)description{  NSString * str = [[NSString alloc] initWithFormat:@"description"];  return str;}
B、-(NSString *)description{  NSString * str = [[NSString alloc] initWithFormat:@"description"];  [str release];  return str;}//不能立即釋放
C、-(NSString *)description{  NSString * str = [[NSString alloc] initWithFormat:@"description"];  [str autorelease];  return str;}
D酝掩、-(NSString *)description{  NSString * str = [NSString stringWithFormat:@"description"];  return [str autorelease];}//沒(méi)有使用alloc開(kāi)辟,不需要手動(dòng)釋放

51等舔、

關(guān)于NSSet描述正確的有:
答案:(B)
A、NSSet可以存放任何數(shù)據(jù)類型的數(shù)據(jù)翁巍。//只能是對(duì)象
B驴一、NSSet存放數(shù)據(jù)是無(wú)序的。
C灶壶、NSSet可以通過(guò)下標(biāo)獲取數(shù)據(jù)肝断。//無(wú)序存儲(chǔ)
D、NSSet存放的數(shù)據(jù)是有序的。

52胸懈、

下列哪個(gè)選項(xiàng)不能作為property的可選屬性:
答案:(A)
A担扑、alloc
B、retain
C趣钱、atomic
D涌献、strong

53、

NSRange是什么數(shù)據(jù)類型:
答案:(C)
A首有、數(shù)組
B燕垃、字典
C、結(jié)構(gòu)體
D井联、指針

54卜壕、

下面描述正確的選項(xiàng)是:
答案:(B)
A、當(dāng)計(jì)數(shù)器為1時(shí),dealloc方法由系統(tǒng)自動(dòng)調(diào)用//計(jì)數(shù)器為0 時(shí)才調(diào)用dealloc
B低矮、一個(gè)對(duì)象在引用計(jì)數(shù)變?yōu)?時(shí)印叁,會(huì)調(diào)用自己的dealloc方法
C、在dealloc方法里军掂,應(yīng)該在[super dealloc]后釋放本類所擁有的對(duì)象//先釋放本類擁有對(duì)象再調(diào)用父類的dealloc方法
D轮蜕、開(kāi)啟ARC后,可以重載dealloc蝗锥,必須在dealloc里寫 [super dealloc]方法//ARC模式下無(wú)需手動(dòng)寫內(nèi)存釋放方法.

55跃洛、

實(shí)例變量默認(rèn)的訪問(wèn)修飾符是:
答案:(C)
A、@public
B终议、@private
C汇竭、@protected
D、@package

56穴张、

下面程序段的輸出結(jié)果是什么:
NSArray * arr1 = [[NSArray alloc] initWithObjects:@"1",@"2",@"3", nil];
NSString *str;
str = [arr1 objectAtIndex:2];
NSLog(@"%@",str);
答案:(C)
A细燎、1
B、2
C皂甘、3
D玻驻、程序崩潰

57、

@interface Person : NSObject@property(nonatomic,retain)NSString * name;@end上面聲明一個(gè)Person類
Person * per = [[Person alloc] init];
 per.name = [[NSString alloc] initWithFormat:@"張三"];
NSLog(@" per.name = %d",[per.name retainCount]);
答案:(D)
A偿枕、per.name = -1;
B璧瞬、per.name = 0;
C、per.name = 1;
D渐夸、per.name = 2;

58嗤锉、

下面程序段的輸出結(jié)果是什么:
NSMutableDictionary * dic = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"1",@"2",@"2",@"3",@"3",@"4", nil];
[dic removeObjectForKey:@"3"];
NSLog(@"%@",dic);//字典打印時(shí)前邊是鍵,后邊是值
答案:(C)
A、1=2 3=4
B墓塌、1=2 2=3
C瘟忱、2=1 4=3
D奥额、2=1 3=2

59、

關(guān)于協(xié)議描述不正確的是:
答案:(D)
A酷誓、協(xié)議分正式和非正式協(xié)議披坏。
B、在要求確認(rèn)協(xié)議的類必須實(shí)現(xiàn)協(xié)議中的方法時(shí)盐数,可以使用@required棒拂。
C、一個(gè)協(xié)議可以被多個(gè)類確認(rèn)玫氢。
D帚屉、協(xié)議中聲明的方法,默認(rèn)是@optional的漾峡。//默認(rèn)是required

60攻旦、

下面哪個(gè)選項(xiàng)是正確的:
答案:(B)
A、用繼承可以擴(kuò)展一個(gè)類生逸,要調(diào)用擴(kuò)展的方法牢屋,既可以用父類,也可以用子類//父類不能調(diào)用子類的方法
B槽袄、用類目可以擴(kuò)展一個(gè)類烙无,可以直接用該類或該類的實(shí)例對(duì)象,去調(diào)用該類目擴(kuò)展的方法
C遍尺、延展就是類目//延展extension,類目category
D截酷、可以在一個(gè)類的外部,調(diào)用這個(gè)類延展的方法//延展中的方法都是私有的

61乾戏、

以下對(duì)類的描述不正確的是:
答案:(C)
A迂苛、類的接口部分可以包含實(shí)例變量、屬性和方法
B鼓择、可以把聲明和實(shí)現(xiàn)都放到.h文件中
C三幻、一對(duì)文件(Person.h Person.m)只能定義一個(gè)類//可以定義多個(gè)類
D、類比較抽象呐能,對(duì)象比較具體

62念搬、

聲明一個(gè)返回值為NSArray,并且?guī)蓚€(gè)字符串對(duì)象的BLOCK類型變量:
答案:(D)
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)//block用^來(lái)修飾

63、

Objective-C 語(yǔ)言中類的實(shí)例變量如果只可以被本類和其子類訪問(wèn)悯搔,需要下列哪個(gè)修飾符:
答案:(C)
A骑丸、@public
B、@private//子類也訪問(wèn)不到,外部更拿不到
C、@protected
D通危、@friendly

64铸豁、

關(guān)于類目、延展的描述錯(cuò)誤的是:
答案:(B)
A菊碟、延展主要為類提供“私有”方法
B节芥、類目、延展不但能為類添加方法逆害,而且都可以添加新的實(shí)例變量//類目不能添加實(shí)例變量
C头镊、無(wú)論能否拿到類的源碼,類目都可以對(duì)其擴(kuò)展
D魄幕、類目和延展聲明語(yǔ)法不同

65相艇、

現(xiàn)要求聲明一個(gè)集合,并將字符串添加到集合中纯陨,編寫了如下代碼坛芽,其中錯(cuò)誤的是第幾行:NSString * aString = [[NSString alloc] initWithString:@"iLanou"]; 
(1)[aString autorelease]; 
(2)NSArray * arr = [NSArray array]; 
(3)[arr addObject:aString]; //不可變數(shù)組沒(méi)有addObject方法
(4)NSLog(@"string = %lu",[aString retainCount]);
答案:(C)
A、(1)
B翼抠、(2)
C咙轩、(3)
D、(4)

66机久、

查看下列代碼臭墨,能正確輸出number的選項(xiàng)是:
@interface MyClass : NSObject
{  
int number;
}
+(void) printNumber;
@end
@implementation MyClass
+(void) printNumber
{  
number =10;  
NSLog(@""%d"",number);
}
@end
答案:(D)
A、[MyClass printNumber];
B膘盖、MyClass * obj = [[MyClass alloc] init]; [obj printNumber];
C胧弛、printNumber();
D、編譯錯(cuò)誤侠畔,無(wú)法執(zhí)行结缚。//@""%d"",引號(hào)太多了

67、

讀代碼
NSString * str =[[NSString alloc]initWithFormat:@"%@",@"iLanou123ios"];
NSString * str1=[str substringToIndex:3];
NSString * str2=[str substringWithRange:NSMakeRange(6, 3)];
NSString * newStr=[str1 stringByAppendingString:str2];
NSLog(@"newStr=%@",newStr);
則newStr的值為:
答案:(D)
A软棺、iLanou
B红竭、iL123
C、iLaios
D喘落、iLa123

68茵宪、

對(duì)于下面代碼說(shuō)法正確的是:
@property (copy,nonatomic,readonly)NSString * calValue;//只能讀不能寫,只有g(shù)etter方法,沒(méi)有setter方法.不能保證多線程安全
答案:(D)
A瘦棋、沒(méi)有g(shù)etter方法,當(dāng)對(duì)calvalue賦值時(shí)稀火,將產(chǎn)生一個(gè)NSString副本。
B赌朋、此屬性可保證多線程安全凰狞。
C篇裁、此屬性在合成時(shí)可以生成設(shè)置器方法。//應(yīng)該是訪問(wèn)器
D赡若、此屬性只能讀取达布,不能賦值。

69逾冬、

NSMutableDictionary * dic = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"1",@"2",@"2",@"3",@"3",@"4", nil];
NSArray *arr = [[NSArray alloc] initWithArray:[dic allKeys]];
NSString *str = [[NSString alloc] initWithFormat:[arr objectAtIndex:0],[arr objectAtIndex:1],[arr objectAtIndex:2]];
NSLog(@"%@",str);
結(jié)果是:
答案:(C)
A黍聂、123
B、234
C粉渠、2
D分冈、3

70、

下面程序段的輸出結(jié)果是什么:
NSString * aString = [[NSString alloc] initWithFormat:@"123"];  NSLog(@"%d",aString.retainCount);
aString = @"456";
NSLog(@"%d",aString.retainCount);
[aString release];
aString = @"789";
NSLog(@"%d",aString.retainCount);
答案:(D)
A霸株、1,2,1
B雕沉、1,1,0
C、1,-1,0
D去件、1,-1,-1 //便利構(gòu)造器中個(gè)的alloc先+1 ,指針指向@"123",后指針指向改變,指向了常量區(qū)對(duì)象@"456",引用計(jì)數(shù)為-1,指針又重新指向新對(duì)象@"789",新對(duì)象引用計(jì)數(shù)為-1.

71坡椒、

下面程序段的輸出結(jié)果是什么:
NSMutableDictionary * dic = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"1",@"2",@"2",@"3",@"3",@"4", nil];
NSString *str = @"3";int a = 3;[dic setObject:a forKey:str];
NSLog(@"%@",dic);
答案:(D)
A、2=1 3=3 4=3
B尤溜、1=2 3=3 3=4
C倔叼、1=2 3=3 3=3
D、程序崩潰 //setobject :a ,a是基本數(shù)據(jù)類型,value只能是對(duì)象

72宫莱、

寫出下面程序段的輸出結(jié)果:
NSString * aString = [[NSString alloc] initWithString:@"123"];
 [aString autorelease];
NSMutableArray * arr = [NSMutableArray array];
[arr addObject:aString];
NSLog(@"string = %lu",[aString retainCount]);
答案:(C)
A丈攒、1
B、0
C授霸、整型最大值 //18446744073709551615
D巡验、2

73、

NSMutableDictionary字典中刪除對(duì)象可以使用下面那個(gè)方法:
答案:(D)
A碘耳、filteredArrayUsingPredicate:
B显设、arrayByAddingObject:
C、initWithCapacity:
D辛辨、setValue:forKey:

74捕捂、

有如下一個(gè)類定義
@interface MyClass:NSObject
@property(nonatomic,retain)NSString *str;
@end
@implementation MyClass
(1)-(NSString *)str{  return str;}
-(void)dealloc{  self.str = nil; 
 [super dealloc];}
@end
(1)處補(bǔ)充完整:
答案:(C)
A、-(void)setStr:(NSString *)newStr{  str = newStr;}
B斗搞、-(void)setStr:(NSString *)newStr{  [str release];  str = [newStr retain];}
C指攒、-(void)setStr:(NSString *)newStr{  if(str != newStr)  {    [str release];    str = [newStr retain];  }}
D、-(void)setStr:(NSString *)newStr{  [newStr retain]  [str release] = newStr;}

75僻焚、

下列哪個(gè)操作不會(huì)引起引用計(jì)數(shù)(retaincount)的變化是:
答案:(B)
A允悦、NSString *str1 = [[NSString stringWithFormat:@"hehe"];//構(gòu)造便利器內(nèi)部發(fā)生引用計(jì)數(shù)的變化
B、int a=1;
C溅呢、NSMutableData *data1 = [NSMutableData allocWithZone:data2];
D澡屡、NSArray *arr1 = [[NSArray alloc]initWithArray:arr2];

76、

下面程序段的輸出結(jié)果是什么:
NSString * aString = [[NSString alloc] initWithString:@"hehe"];
 [aString autorelease];
NSMutableArray *arr = [NSMutableArray array];
[arr addObject:aString];
NSLog(@"string = %d",[aString retainCount]);
答案:(A)
A咐旧、string = -1
B驶鹉、string = 0
C、string = 1
D铣墨、string = 2

77室埋、

下面程序段的輸出結(jié)果是什么:
NSMutableDictionary * dic = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"1",@"2",@"1",@"3",@"1",@"4", nil];
NSArray *arr1 = [[NSArray alloc] initWithArray:[dic allKeys]];
NSArray *arr2 = [[NSArray alloc] initWithArray:[dic allValues]];
NSMutableDictionary *dic2 = [[NSMutableDictionary alloc] initWithObjects:arr1 forKeys:arr2];
NSLog(@"%@",dic2); // 字典中鍵不能重復(fù)
答案:(C)
A、1=2 1=3 1=4
B伊约、2=1 3=1 4=1
C姚淆、1=4
D、4=1

78屡律、

下面程序段的輸出結(jié)果是什么:
int a = 10;
NSNumber *b = [[NSNumber alloc] initWithInt:a];
NSLog(@"%d", a+++b);
答案:(D)
A腌逢、21
B、20
C超埋、30
D搏讶、編譯錯(cuò)誤 // 輸出時(shí)類型不匹配,b是一個(gè)對(duì)象

79、

下面程序段的輸出結(jié)果是什么:
NSMutableDictionary * dic = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"1",@"2",@"2",@"3",@"3",@"4", nil];
[dic setObject:@"1" forKey:@"3"];
[dic removeObjectForKey:@"1"];//沒(méi)有key為1的值
NSLog(@"%@",dic);
答案:(C)
A霍殴、1=3 2=3 3=4
B媒惕、1=2 1=3 3=4
C、2=1 3=1 4=3
D来庭、3=1 3=2 4=3

80妒蔚、

下列選項(xiàng)中不能正常為emp的name屬性賦值的代碼有:
答案:(B)
A、emp.name=@"李嘉誠(chéng)";
B月弛、emp->name=@"李開(kāi)復(fù)";
C肴盏、[emp setValue:@"柳傳志" forKey:@"name"];
D、[emp setName:@"黃光裕"];

1尊搬、

一個(gè)文件中可以聲明多個(gè)類叁鉴。
答案:(T)
正確
錯(cuò)誤

2、

實(shí)例對(duì)象都是通過(guò)調(diào)用類方法生成的佛寿。
答案:(T)
正確
錯(cuò)誤

3幌墓、

方法需要傳遞多個(gè)參數(shù)時(shí),參數(shù)以逗號(hào)分隔冀泻。//參數(shù)用:隔開(kāi)
答案:(F)
正確
錯(cuò)誤

4常侣、

不是每個(gè)對(duì)象都有引用計(jì)數(shù)。 //每個(gè)對(duì)象都有引用計(jì)數(shù)
答案:(F)
正確
錯(cuò)誤

5弹渔、

Objective-C 可以多重繼承胳施。
答案:(F)
正確
錯(cuò)誤

6、

為了保證程序不產(chǎn)生額外的內(nèi)存開(kāi)銷肢专,當(dāng)對(duì)象不再被需要以后舞肆,應(yīng)當(dāng)被立即銷毀焦辅。
答案:(T)
正確
錯(cuò)誤

7、

retain的作用是引用計(jì)數(shù)減一椿胯。//+1
答案:(F)
正確
錯(cuò)誤

8筷登、

注釋可以出現(xiàn)在程序的任何位置。
答案:(T)
正確
錯(cuò)誤

9哩盲、

在dealloc方法中對(duì)變量的釋放順序與初始化的順序相同前方。//相反,初始化時(shí)先調(diào)父類初始化方法,釋放時(shí),先釋放自身,再調(diào)用父類釋放方法
答案:(F)
正確
錯(cuò)誤

10、

便利構(gòu)造器產(chǎn)生的對(duì)象應(yīng)當(dāng)由使用者進(jìn)行銷毀廉油。//便利構(gòu)造器內(nèi)部已經(jīng)實(shí)現(xiàn)了開(kāi)辟與釋放的平衡,不需要手動(dòng)釋放.
答案:(F)
正確
錯(cuò)誤
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末惠险,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子抒线,更是在濱河造成了極大的恐慌班巩,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,718評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件嘶炭,死亡現(xiàn)場(chǎng)離奇詭異趣竣,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)旱物,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,683評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門遥缕,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人宵呛,你說(shuō)我怎么就攤上這事单匣。” “怎么了宝穗?”我有些...
    開(kāi)封第一講書人閱讀 158,207評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵户秤,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我逮矛,道長(zhǎng)鸡号,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書人閱讀 56,755評(píng)論 1 284
  • 正文 為了忘掉前任须鼎,我火速辦了婚禮鲸伴,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘晋控。我一直安慰自己汞窗,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,862評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布赡译。 她就那樣靜靜地躺著仲吏,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上裹唆,一...
    開(kāi)封第一講書人閱讀 50,050評(píng)論 1 291
  • 那天誓斥,我揣著相機(jī)與錄音,去河邊找鬼许帐。 笑死岖食,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的舞吭。 我是一名探鬼主播,決...
    沈念sama閱讀 39,136評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼析珊,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼羡鸥!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起忠寻,我...
    開(kāi)封第一講書人閱讀 37,882評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤惧浴,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后奕剃,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體衷旅,經(jīng)...
    沈念sama閱讀 44,330評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,651評(píng)論 2 327
  • 正文 我和宋清朗相戀三年纵朋,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了柿顶。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,789評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡操软,死狀恐怖嘁锯,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情聂薪,我是刑警寧澤家乘,帶...
    沈念sama閱讀 34,477評(píng)論 4 333
  • 正文 年R本政府宣布,位于F島的核電站藏澳,受9級(jí)特大地震影響仁锯,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜翔悠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,135評(píng)論 3 317
  • 文/蒙蒙 一业崖、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧蓄愁,春花似錦腻要、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 30,864評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春趟济,著一層夾襖步出監(jiān)牢的瞬間乱投,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 32,099評(píng)論 1 267
  • 我被黑心中介騙來(lái)泰國(guó)打工顷编, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留戚炫,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,598評(píng)論 2 362
  • 正文 我出身青樓媳纬,卻偏偏與公主長(zhǎng)得像双肤,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子钮惠,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,697評(píng)論 2 351

推薦閱讀更多精彩內(nèi)容