欢迎来到天天文库
浏览记录
ID:46682076
大小:81.50 KB
页数:25页
时间:2019-11-26
《oc基础编程练习题》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、0C基础编程练习题1、声明了©property指令,就不能再用setter,getter方法了。可以,只是说我们更方便了2、注释可以出现在程序的任何位置。对的3、一个文件屮可以声明多个类。对的4、对象和现实中的物体是——对应的关系。5、使用一个类方法也需要构建一个对象。6、@class指令可把想要的类的接口文件包含进来如果在a.h里import了b.h,那么所有import了a.h的文件都会同时与b.h产生编译依赖,一旦b.h被修改,所有应用了a.h的文件也要被重新编译。如果可以使用前置声明而不是importb.h,而
2、是用@class,就可以解除这种依赖关系,b.h被修改,只import了a.h的文件就未必需要重新编译。7、对象被创建出来后,其引用计数为0.Objective-C的对象拥有引用计数,对象被创建后1,当其引用计数减少时,系统将会销毁此对象8、使用便利构造器获得的对象也需要释放。不需要8.retain、copy.assign举个例子可能更好理解点NSString*pt二[[NSStringalloc]initWithString:abc"];上面一段代码会执行以下两个动作1在堆上分配一段内存用来存储@”abc”比如:内存
3、地址为:0X1111内容为“abc”在栈上分配一段内存用来存储pt比如:地址为:OXaaaa内容自然为0X1111下面分另U看下assignretaincopyassign的情况:NSString*newPt二[ptassing];此时newPt和pt完全相同地址都是OXaaaa内容为0X1111即newPt只是pt的别名,对任何一个操作就等于对另一个操作。因此retainCount不需耍增加。retain的情况:NSString*newPt二[ptretain];此时newPt的地址不再为OXaaaa,口J能为OXa
4、abb但是内容依然为0Xllllo因此newPt和pt都可以管理”abcv所在的内存。因此retainCount需要增加1copy的情况:NSString*newPt二[ptcopy];此时会在堆上重新开辟一段内存存放abc”比如0X112内容为abc同时会在栈上为newPt分配空间比如地址:OXaacc内容为0X112因此retainCount增加1供newPt来管理0X1122这段内存9、objective-c可以多重继承。不可以10、冒号也是方法名的一部分。不是11、在类方法中可以使用实例变量。不可以12、默认情
5、况下,实例变量没有特别说明的话,它们的使用范围是©private类型。13、NSString对象可以被修改。14、break只会跳出本次循环。15、求数组的内容的个数用length方法。16、字典是根据其位置来索引数据的。17、协议中定义的方法默认是必须实现的。18、定义类口必须要拿到自己类的源代码。19、同时接受多个协议时,协议名之间要用逗号隔开。20、数组只能保存对象。21、retain的作用是引用计数减一。22、autorelease只不过是意味着"预定延迟发送一条release消息。23>objective-c
6、的对象生成之后,需要一个指针来指向它。24、objective-c的对象在使用完成之后不会自动销毁,需要执行dealloc来释放,否则内存泄露。25、声明一个类时必须命名它的父类。26、实例变量在一对{}外。27、实例方法不能直接访问实例变量。28、方法不能与变量重名。29、方法需要传递多个参数时,参数以逗号分隔。30、消息表达式不能嵌套使用。31、点语法在实现上与访问器没有区别,但是会造成性能上损失或产生额外线程调用。32、重载方法返冋值,参数个数可以不同。33、类方法实例对象也可以使用。34、实例对象都是通过调用类
7、对象的类方法生成的。对的35>初始化方法就是在对象创建的时候给实例变量一些初始值。对的36>在Objective-c中,对象不断地被其它对象创建、使用和销毁。对的37、为了保证程序不产生额外的内存开销,当对象不再被需要以后,应当被立即销毁。对的38、对象也有可能在创建了一个对象以后,把他传递给别一个对象去使用。39、不是每个对象都有引用计数。错的40、便利构造器产生的对象应当市使用者进行销毁。41、在dealloc方法中对变量的释放顺序与初始化的顺序相同。相反42、属性声明可以出现在类的接口定义的方法区域的任意位置。对
8、的43、属性还可以在协议或类目的声明中声明。对的44、属性的声明比方法的声明多了参数的说明。45、属性的声明可以在子类、协议和类口小重复进行。对的46、分类的接口中不应当带有实例变量的声明。对47、协议本质上是一堆还未与任何类的实现代码关联的方法的声明。对的48、协议也有自己的特殊数据类型来代表一协议对象。协议类49、协议我单独使
此文档下载收益归作者所有