Objective-C编程基础 (A卷)
一. 选择题。(3分*5题,共计15分)
1.一个方法:- (void)setName: (NSString* )aName andAge: (int)aAge;
关于这个方法的方法名描述正确的是( D )
A、- (void)setName: (NSString* )aName andAge: (int)aAge
B、- (void)setName: andAge:
C、setName: (NSString* )aName andAge: (int)aAge
D、setName: andAge:
。
2.下面那种标示符表示类的继承关系(B)
A、public B、冒号 : C、箭头 - > D、private
3.如果类中的一个属性只能在本类中被访问,则应该使用下面哪个修饰符修饰。(C)
A、public B、 protected C、 private D、default
4.在Objective-C中,如果允许使用已存在的类作为基础创建新的类, 则使用什么方式实现。(B)
A、封装 B、 继承 C、 多态 D、覆盖
5.类是以什么类型存储在代码段之中的:(C)
A、SEL B、NSObject C、Class D、NSString
一. 填空题。(3分*5题 ,共计15分)
1.面向对象的三大特征是__封装____、__继承____和__多态____。
2.___self__关键字在对象方法中指向当前对象;__self___关键字在类方法中指向当前类;子类方法中通过__super___关键字访问父类中的方法。
3.Objective c 中 cocoa框架中有很多苹果官方提供的类,这些类都是__NSObject____类的子类或者间接子类。
4. 对象与对象之间的三种关系:___依赖关系____、___组合关系____、____关联关系____;
5.OC中,当使用点语法为成员属性赋值时,编译器在编译时会将点语法转换为调用该属性的_setter___方法;当使用点语法取值时,会转换为调用该属性的__getter___方法;
二. 简答题。(5分*4题,共计20分)
1. 简述#import和#include二者的区别。(5分)
A:区别就是 #import 可以自动防止重复包含
而#include需要添加以下代码才可以防止重复包含:
#ifndef 文件名
#define 文件名
#inclue 文件名(视情况用()或""括起来)
#endif
2. Objective-C中定义成员变量修饰符分别有哪些?有何不同?(5分)
A:有4个
1)@private,使成员变量成为私有,只能在本类的对象方法中访问。可以被之类继承,但是不能被直接访问。
2)@protected,使成员变量成为受保护的类型,能在本类对象方法中访问。可以被之类继承和
Objective-C基础测试(略简单)
最新推荐文章于 2022-07-06 09:53:00 发布
这篇博客是一份Objective-C的基础测试,包含选择题、填空题、简答题和编程题,涉及类的方法名、继承关系、属性访问修饰符、面向对象特征、内存分区等多个知识点。编程题包括设计Car类、People类及其子类Student、Calculator类,以及实现多态场景。
摘要由CSDN通过智能技术生成