NET面向对象程序设计第7次作业2.docx

上传人:b****4 文档编号:26879629 上传时间:2023-06-23 格式:DOCX 页数:46 大小:27.97KB
下载 相关 举报
NET面向对象程序设计第7次作业2.docx_第1页
第1页 / 共46页
NET面向对象程序设计第7次作业2.docx_第2页
第2页 / 共46页
NET面向对象程序设计第7次作业2.docx_第3页
第3页 / 共46页
NET面向对象程序设计第7次作业2.docx_第4页
第4页 / 共46页
NET面向对象程序设计第7次作业2.docx_第5页
第5页 / 共46页
点击查看更多>>
下载资源
资源描述

NET面向对象程序设计第7次作业2.docx

《NET面向对象程序设计第7次作业2.docx》由会员分享,可在线阅读,更多相关《NET面向对象程序设计第7次作业2.docx(46页珍藏版)》请在冰豆网上搜索。

NET面向对象程序设计第7次作业2.docx

NET面向对象程序设计第7次作业2

1.关于C#中的结构,一下说法中错误的是()。

(选择一项)

A:

结构可以有构造函数B:

结构体内可以有字段

C:

结构体内可以有方法D:

结构体内可以被继承

2.在C#编程中,访问修饰符控制程序对类中成员的访问,如果不写访问修饰符,类的默认访问类型是()。

(选择一项)

ApublicBprivateCinternalDprotected

3.在C#中,下面关于结构使用正确的是()。

(选择一项)

A:

classPerson{}

StructTeacher:

Person{//…}

B:

structPerson{}

StructTeacher:

Person{//….}

C:

structTeacher{

stringname;

intage;

publicTeacher(stringname,intage){

this.name=name;

this.age=age;

}

}

D:

structTeacher{

stringname;

intage;

publicTeacher(){}

}

4.在C#中类的实例需要使用的关键字是()(选择一项)

A:

thisB:

baseCnewD:

as

5.在C#程序中,索引器允许按照自定义的访问方式访问类或结构的实体组成的数组,以下所引器定义正确的是()。

(选择一项)

A:

publicTeachthis[stringindex]{

get{//..}

}

B:

publicTeachthis[index]{

get{//..}

}

C:

publcistringTeach[index]{

get{//..}

}

D:

publicTeach[index]{

get{//…}

}

6.在C#代码中,()是类Teacher的属性。

(选择一项)

PublicclassTeacher{

Intage=13;

PrivatestringName{

get{returnname;}

set{name=value;}

}

PublicvoidSaySomething(){//…}

}

A:

NameBnameCageDSaySomething

7.在C#语言中,方法重载的主要方式有两种,包括()和参数类型不同的重载。

(选择一项)

A:

参数名称不同的重载B:

返回类型不同的重载

C:

方法名不同的重载D:

参数个数不同的参数

8.在一下C#代码的下划线处填入(),该C#语句表示打开一个文件,如果该文件不存在则发生异常。

(选择一项)

FileStreamfs=newFileStream(“D:

\\music.txt”,______________);

A:

FileMode.CreateB:

FileMode.Open

C:

FileMode.CloseD:

FileMode.CreateNew

9.分析一下C#代码,根据面向对象的多态行,代码的运行结果是()(选择一项)

classA{

publicvoidF(){

Console.Write(“A”);

}

PublicvoidF(stringchr)

{

Console.Write(“B”);

}

}

classB:

A

{

PublicvoidF(){

Console.write(“B”);

}

StaticvoidMain()

{

BobjB=newB();

objB.F();

}

}

A:

AB:

BC:

CD:

D

10.在C#中下面关于接口正确的是()(选择一项)

A:

publicinterfaceIStudentService{

publicstringaddStudent()

}

B:

publicinterfaceIStudentService{

stringaddStudent()

{

//…..

}

}

C:

publicclassStudent(){}

publicinterfaceIStudentService:

Student{

stringaddStudent()

}

D:

publicinterfaceIStudentService{

stringaddStudent()

}

11.在C#中,可以避免使用枚举变量来避免不合理的赋值,一下枚举定义中正确的是()(选择一项)

A:

publicenumSex{

male,femal

}

B:

publicenumSex{

male,femal;

}

C:

publicSexenum{

male,femal;

}

C:

publicSexenum{

male,femal

}

12.在C#中提供了一种集合类型的哈希表(HashTable),哈希表的数据是通过键(key)和()来组织的(选择一项)

A:

项(Item)B:

记录(Record)C:

表(table)D:

值(Value)

13.在C#中,使用()访问修饰符修饰的方法被称之为抽象方法。

A:

thisB:

abstractC:

newD :

virtual

14.在C#中创造一个对象是,系统最先执行的是()中的语句。

A:

main方法B:

构造方法C:

初始化函数D:

字符串函数

15.在C#中,关于List和Dictionary的说法,正确的是()(选择二项)

A:

List和Dictionary都有RemoveAt方法

B:

List和Dictionary都有Count属性

C:

获取元素时,List需求类型转换,Dictionary不需要类型装换

D:

List通过索引访问集合元素,Dictionary通过Key访问集合元素。

16.在C#语言中,方法重载的主要方式有两种,包括()和()。

(选择二项)

A:

参数类型不同的重载B:

返回值类型不同的重载

C:

方法名称不同的重载D:

参数个数的不同重载

17.在一下C#中的数据类型中,()属于值类型(选择两项)

A:

boolB:

structC:

classD:

string

18.某些学员用C#写了一段代码,代码的输出结果是()。

(选择一项)

classProgram{

staticvoidMain(string[]args){

Students=newStudent();

s.sayHi();

Console.ReadLine();

}

}

classPerson{

publicvirtualvoidsayHi(){

Console.WriteLine(“你好”);

}

}

ClassStudent:

Person{

PublicoverridevoidsayHi(){

Console.WriteLine(“你好,我是一名学生”);

}

}

A:

学生B:

你好,我是一名学生

C:

你好!

你好,我是一名学生

D:

19.在C#代码中,关于抽象方法和虚方法使用正确的是:

()(选择一项)

A:

publicabstractclassAnimal

{

publicAnimal(){}

publicabstractvoidRun();

}

publicclassCat:

Animal{

publicCat(){}

publicvoidRun(){}

}

B:

publicclassAnimal

{

PublicAnimal(){}

PublicabstractvoidRun(){}

}

PublicclassCat:

Animal

{

PublicCat(){}

PulblicvoidRun(){}

}

C:

publicabstractclassAnimal

{

PublicAnimal(){}

PublicabstractvoidRun(){}

}

PublicclassCat:

Animal

{

PublicCat(){}

PulblicoverridevoidRun(){}

}

D:

publicvirtualclassAnimal

{

PublicAnimal(){}

PublicvirtualvoidRun(){}

}

PublicclassCat:

Animal

{

PublicCat(){}

PulblicvoidRun(){}

}

20.某学员用C#写了如下代码段,该代码的输出结果是()。

(选择一项)

staticvoidMain(string[]args){

ArrayListlist=newArrayList();

list.Add(“ACCP”);

list.Add(“BENET”);

Console.WritteLine(list[1]);

Console.Read();

}

A:

ACCPB:

BENETC:

下标溢出错误D:

1

 

21.分析一下C#片段中的属性,该属性是()属性。

(选择一项)

privatestringname;

PublicstringName{

Get{returnname;}

}

A:

可读可写

B:

只写

C:

只读

D:

静态

22..NET框架是.NET战略的基础,是一种新的便捷的开发平台,它具有两个主要的组件,分别是()和框架类库。

(选择一项)

A:

公共语言运行时

B:

Web服务

C:

命名空间

D:

Main()函数

23.在C#代码中,下面关于结构描述错误的是()。

(选择一项)

A:

结果是值类型

B:

结构不能被继承

C:

结构中可以有属性,也可以有方法

D:

可以给结构添加无参的构造函数

24.分析如下所示的C#代码段,在该段代码中一共进行了()次装箱。

(选择一项)

staticvoidMain(string[]args){

intage=18;

objectrefage=(object)age;

intvalage=(int)refage;

Test(valage);

Console.ReadLine();

}

publicvoidTest(intnumber){

Console.WriteLine(number);

}

A:

0B:

1C:

2D:

3

25.在.NET中,接口是一中规范和标准,它可以月约束类的行为,下列接口定义正确的是()(选择一项)

A:

publicinterfaceIBicycle{

voidride();

}

B:

publicinterfaceIBicycle{

voidride(){};

}

C:

publicinterfaceIBicycle{

StringType(){

get();

set();

}

}

D:

publicinterfaceIBicycle{

stringcolor;

}

26.在C#中有如下范型集合代码,项该范型集合中添加一个键为“李四”的学员对象,一下选项中该范型集合不同操作,其中正确的是()。

(选择二项)

Dictionarydict=newDictionary();

A:

dict.RemoveAt(0);

B:

Studentstu=dict[“李四”];

C:

foreach(Studentstuindict.Keys){…}

D:

foreach(Studentstuindict.Values){….}

27.下列代码中使用了抽象类的概念,这段代码中发生错误的代码行是()。

abstractclassWashingMachine{

publicWashingMachine(){}//1

abstractpublicvoidWash();//2

}

classMyWashingMachine:

WashMachine{

overridepublicvoidWash(){}//3

staticvoidMain(){

washingMachinewm=newWashingMachine();//4

wm.Wash();

}

}

A:

1B:

2C:

3D:

4

28.在C#中,下列关于密封类使用正确的是()(选择一项)

A:

sealedclassPersong{

//…

}

classStudent:

Person{

//…

}

B:

classPersong{

//…

}

sealedclassStudent:

Person{

//…

}

C:

sealedclassPersong{

PublicintaddStudent();

}

D:

sealedclassPersong{

PublicintaddStudent();

}

29.以下关于C#中构造函数说法正确的是()

A:

在访问一个类时,系统最先执行类的构造函数。

B:

构造函数有返回值

C:

一般情况先,构造函数总是private类型的。

D:

可以为枚举类型中的元素赋整数值。

30.在以下代码中,()是类Teacher的方法。

publicclassTeacher

{

intage=33;

privatestringname;

publicstringName

{

get{returnname;}

set{name=value;}

}

}

publicvoidSaySomething{

//…..

}

A:

NameBnameCageDSaySomething

31.在使用C#语言开发程序过程中,有时需要按照使用类图说明类与类之间的关系,在类图中使用()符号表示共有成员。

A.+B:

-C:

*D:

#

32.以下C#代码运行的结果是()

Listnum=newList();

for(inti=1;i<6;i++)

{

num.Add(i);

}

for(inti=1;i<3;i++)

{

num.Remove(i);

}

foreach(intiinnum)

{

Console.Write(i.ToString());

}

A:

运行出错

B:

345

C:

145

D135

33.假设我们要使用C#设计一个日志系统,要求程序运行是,检查system.log文件是否存在,如果已经存在则直接打开,如果不存在则创建一个,为了实现这个目的,我们应该以FileMode的()方式创建文件流。

(选择一项)

A:

CreateNew

BOpen

COpenOrCreate

DCreate

34.关于C#中的结构,以下说法中正确的是();

A结构可以有构造函数

B结构体内可以有字段,但不能有方法

C结构体内可以有方法,但不能有字段

D结果可以被继承

35,关于C#中的虚方法,以下说法中正确的是();

A使用static修饰

B可以有方法体

C可以被子类重写

D使用abstract修饰

36在C#中,已知存在一个接口Iteacher,以下对该接口实现正确的是().(选择一项)

InterfaceITeacher

{

intaddTeacher();

voidModifyTeacher();

}

AclassTeacherSerices:

ITeacher

{

publicintaddTeacher()

{

//…

}

}

BclassTeacherSerices:

ITeacher

{

publicintaddTeacher()

{

//…

}

publicvoidModifyTeacher(){//…..}

}

CclassTeacherSerices:

ITeacher

{

publicoverrideintaddTeacher()

{

//…

}

publicoverridevoidModifyTeacher(){//…..}

}

DclassTeacherSerices:

ITeacher

{

publicintaddTeacher()

{

//…

}

publicvoidModifyTeacher(){//…..}

}

37.分析如下C#代码,根据类的继承关系,运行后的输出结果是()(选择一项)

publicclassPerson

{

privateintage=0;

publicintAge

{

get{returnage;}

set

{

If(value>=18)

Console.WriteLine(“成年人”);

Else

Console.WrteLine(“未成年人”);

}

}

}

publicclassPeople:

Person

{

publicPeople()

{

Console.Write(“不得入内”);

}

}

classTest

{

staticvoidMain(string[]args)

{

peopleshang=newPeople();

shang.Age=17

}

}

A未成年人不得入内

B成年人不得入内

C不得入内

D不得入内未成年人

38.在C#中,数据类型包括值类型和引用类型,以下属于值类型的有()。

(选择两项)

ASystem.Object

Bint

C类

D结构

39.在C#语言开发的程序中,以下关于反射的说法中错误的是()。

(选择一项)

A.反射提供了封装程序集,模块和类型对象

B.使用反射可以动态的创建类型的实例

C.使用反射时必须提供解决方案

D.使用反射可以获得已加载的程序集和在其中定义的类型信息,也可以调用类型的方法或访问字段和属性

40.在C#语言开发的程序中,以下对于方法重载的定义错误的是()。

(选择二项)

A.publicintSub(inta,intb)和publicintSub(intc,intd)

B.publicintModify(inta,intb)和publicintModify(stringa,intb,stringc)

C.publicvoidSayHi(stringa,intb)和publicvoidSayHi(stringa,stringb)

D.publicvoidMultiply(inta,intb)和publicintMultiply(inta,intb)

41.在C#中,下列数据类型属于引用类型的是()。

(选择一项)

A.整型(int)

B.结构(struct)

C.接口(interface)

D.枚举(enum)

42.在C#程序中,下面关于枚举的说法不正确的是()。

(选择一项)

A.使用枚举可以避免不合理赋值

B.枚举属于值类型

C.MessageBox的返回结果DialogResult是枚举类型

D.System.Drawing.Color类型是枚举类型

43.在C#语言中,以下关于文件处理描述错误的是()。

(选择一项)

A.要对文件进行读书,需要在类中使用System.IO命名空间

B.StreamWriter写入器创建方法可以为newStreamWriter(StringFilePath)

C.StreamWriter写入器创建方法也可以为newStreamWriter(FileStreammyfs)

D.StreamReader读取器读取文件流中从当前位置到末尾的所有字符的方法为ReaderLine()

44.在C#语言中,以下关于集合的说法错误的是()。

(选择一项)

A.ArrayList只能通过索引来访问和删除值

B.HashTable可以直接通过键名来获取值

C.使用List添加、读取元素时,不需要拆箱和装箱,这一点和ArrayList相同

D.使用Dictionary可以通过Key获取Value,这一点和HashTable相同

45.在C#总,下列关于属性的使用正确的是()。

(选择一项)

A.privateintnum;

publicstringNum

{

get{retuennum;}

set{num=value;}

}

B.privateintnum;

publicintNum

{

get{retuennum;}

set{num=value;}

}

C.privateintnum;

publicintNum

{

get{num=value;}

set{retuennum;}

}

D.privateintnum;

privateintNum

{

get{retuennum;}

set{num=value;}

}

47.在C#语言中,以下关于Trainer类中构造函数的说法错误的是()。

(选择二项)

A.此构造函数一般命名为Trainer

B.此构造函数可以返回int或stirng型

C.此构造函数一般为public类型

D.此构造函数一般被显示调用

48.在C#程序中,下面关于接口的说法错误的是()。

(选择一项)

A.接口中更可以包含属性、方法等,但是都不能实现

B.接口和类有重要的区别,前者可以被多重继承,而后者不可以

C.接口可以实例化,但实例化时必须实现所有未实现的方法

D.实现接口的类必须实现接口中未实现的方法

49.在C#语言中,若类a的命名空间为“b.c”,类d的命名空间为“e.f”,则下列说法中错误的是()。

(选择一项)

A.若在d中使用a中的方法,可以通过“usingb.c”引入命名空间

B.命名空间“e.f”中不可能出现名为a的类

C.若在d中使用a中的方法,可以通过“b.c.a”全名的方式使用

D.a和d虽在不同的命名空间下,但仍可

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 城乡园林规划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1