《软件设计模式》在线平时作业1
试卷总分:100 得分:100
一、单选题 (共 10 道试题,共 50 分)
1.C#语言的核心是面向对象编程(OOP),所有OOP语言都应至少具有三个特性:
A.类、对象和方法
B.封装、继承和派生
C.封装、继承和派生
D.封装、继承和多态
2.C#语言中,下列能够作为变量名的是____。
A.if
B.a-bc
C.a_3b
D.3ab
3.在c#程序中,入口函数的正确声明为:
A.void Main(){……}
B.static void main(){……}
C.static void Main(){……}
D.static int main(){…..}
4.在类的定义中,类的_______描述了该类的对象的行为特征。
A.类名
B.私有域
C.方法
D.所属的名字空间
5.下面关于析构函数的说法中,不正确的是( )
A.用户可以定义有参数的析构函数
B.析构函数在对象被撤销时,被自动调用
C.析构函数中不可以包含return语句
D.一个类中只能有一个析构函数
6.C#中,新建一字符串变量str,并将字符串"Tom's Living Room"保存到串中,则应该使用下列哪条语句?( )
A.string str("Tom's Living Room");
B.string str("Tom"s Living Room");
C.string str = "Tom\'s Living Room";
D.string str = "Tom's Living Room";
7.分析下列C#语句,注意类MyClass 没有访问修饰符:
namespace ClassLibrary1
{
class MyClass
{
public class subclass
{
int i;
}
}
}
若必须为类MyClass 添加访问修饰符,并使MyClass 的可访问域保持不变,则应选择_________
A.public
B.protected
C.private
D.internal
8.在C#中设计类时,应如何保证在释放对象的所有引用之时,释放对象使用的文件、网络等资源?
A.为类重载new运算符
B.为类添加析构函数,在析构函数中释放资源
C.为类添加delete运算符
D.为类实现IDisposable接口,并实现Dispose方法,在该方法中释放资源
9.下面是几条动态初始化二维数组的语句,指出其中正确的:
A.int[,] arr8=new int[4,5];
B.int arr7[,]=new int[4,5];
C.int[][] arr6 = new int[4, 5];
D.int arr5[][]=new int[4,5];
10.C#中每个int 类型的变量占用_______个字节的内存。
A.8
B.4
C.2
D.1
二、判断题 (共 10 道试题,共 50 分)
11.在C# 2005编程环境中,常量的值可以在代码中被修改。
12.面向数据流的设计以面向对象分析阶段的数据流图为基础。
13.C#程序语言也可以进行面向过程的编程。
14.软件危机是二十一世纪软件领域出现的新问题。
15.数组作为函数的参数时默认的传递形式是按值传递。
16.面向对象方法是从算法为出发点来构造系统。
17.在C#中,接口可以被多重继承而类不能。
18.可以将非静态的方法覆写成静态方法。
19.顺序图和协作图虽然都是用来描述交互的,但顺序图强调的是空间,而协作图强调的是时间。
20.面向对象方法使软件系统模型变得复杂,不容易理解。