1:在C#中,关于文件操作相关的类说法正确的是(AB) <选择二项>

A:FileInfo类提供了用于操作文件的实例方法

B:File类提供了用于操作文件的静态方法

C:Directory类提供操作目录的实例方法

D:DirectoryInfo类提供了操作目录的静态方法

解析:

DirectoryInfo类提供操作目录的实例方法

Directory类提供了操作目录的静态方法

2:下面的选项(AD)可以导致下面的代码出现错误。<选择二项>

Student s=new Student();

s.Name="Marry";

A:将Student类中的Name属性设置为只读属性

B:将Student类中的Name属性设置为只写属性

C:向Student类中添加无参数的构造函数

D:向Student类中添加有参数的构造函数

3:在.NET中创建文件流的时候,需要指定文件模式FileMode的值,下面对FileMode的值解释正确的是(AC)

<选择二项>

A:Create:用指定的名称新建文件。如果文件存在,则覆盖原有的

B:CreateNew:新建一个文件。如果已存在,则不做处理

C:Open:打开一个文件。文件必须存在,否则报错

D:OpenOrCreate:打开或新建一个文件。如果文件不存在,则新建但不打开它

解析:

B:CreateNew 新建一个文件。如果文件存在会发生异常,提示文件已经存在。

D:OpenOrCreate:如果文件不存在,则用指定的名称新建一个文件并打开它

4:在.NET中使用文件的时候,会经常遇到乱码的问题,下面选项中关于乱码说法正确的是(C)

A:处理乱码使用Encoding,Encoding是一个枚举类型

B:在写入文件内容的时候指定其编码格式,可以避免出现乱码

C:在读取文件的时候,指定解析文件的编码格式,可以解决乱码问题

D:Encoding位于System.Data命名空间

解析:

使用文件出现乱码本质是文件保存的编码和读取时使用的编码方式不一致。写入文件指定编码格式,不能解决问题,在读取文件时,指定和文本保存时一致的编码格式,则不会出现乱码;Encoding位于System.Text命名空间

5:在.NET中,下列关于Directory类和DirectoryInfo类说法正确的是(A)

A:Directory类的方法都是静态的,可以直接调用

B:DirectoryInfo类的方法都是静态的,可以直接调用

C:Directory类和DirectoryInfo类都可以用Exist()方法检验指定目录是否存在

D:Directory类的GetFile()方法返回的是指定目录下的FileInfo对象数组

解析:

Directory类的方法都是静态的,可以直接调用,DirectoryInfo类的方法不是静态的,所以要通过实例化调用。Directory包含Exist()方法,DirectoryInfo包含Exist属性,Directory类的GetFiles()方法返回指定目录下的文件名字字符串数组

6:在以下C#代码中,横线处填写(BD)不会出错。<选择二项>

Dictionary<int,string>dic=new Dictionary<int,string>();

dic.Add(1,"C#OOP");

Console.WriteLine(_____________);

A:dic["C#OOP"]

B:dic[dic.Count]

C:dic[0]

D:dic[1]

7:在C#代码中,以下代码输出的结果为(C)

class Program

{

int num=10;

static void Main(string[]args)

{

Console.WriteLine(num++);

}

A:11

B:10

C:编译报错

D:运行报错

解析:

静态成员只能通过类名调用,在静态方法中一般只能调用静态的成员,非静态成员必须通过对象去调用。因此程序编译不通过

8:在C#中,关于泛型集合和ArrayList的说法正确的是 (C)   <选择一项>

A:向ArrayList中添加元素时,只能添加一种类型的元素 <可添加多种类型元素>

B:从ArrayList中读取元素时不需要做类型转换  <需要进行类型转换>

C:使用泛型集合需引用System.Collections.Generic命名空间

D:ArrayList添加、读取时无须装箱、拆箱  <如果向ArrayList中添加的元素是值类型,这些元素就都会装箱处理转换为Object引用类型,然后保存>

9:在C#中,使用集合初始化器初始化集合的用法正确的是(BC)<选择二项>

A://SE类为已经定义好的类

List<SE>list=new List<SE>(new SE(),new SE());

B://SE类为已经定义好的类

List<SE>list=new List<SE>{new SE(),new SE()};

C:ArrayList list=new ArrayList{1,2};

D:ArrayList list=new ArrayList(){1;2};

解析:

初始化多个元素用{}而不是(),所以A错误,多个元素用逗号而不是分号分割,所以D错,至于集合类型后面可以加括号也可以不加括号,所以BC都可以

10:在C#中,以下代码执行的结果是(B)。

public struct Test

{

public int num;

}

public class Test1

{

public static void Change(Test t1,ref Test t2)

{

t1.num++;

t2.num++;

}

public static void Main()

{

Test t1;

t1.num=1;

Test t2;

t2.num=2;

Change(t1,ref t2);

Console.Write(t1.num+","+t2.num);

}

}

A:1,1

B:1,3

C:2,2

D:2,1

解析:

ref修饰的值类型按照引用类型传递,结构属于值类型;题目中t1没有用ref修饰,值不改变,t2使用了ref修饰,值会改变

11:在C#中,定义Apple类为Fruits类的子类,下列语句不能用于将Fruits类型转换为Apple类型的是(AD)<选择二项>

A:Fruits fru=new Apple();

Apple app=fru is Apple;

B: Fruits fru=new Apple();

Apple app=fru as Apple;

C: Fruits fru=new Apple();

Apple app=(Apple)fru;

D: Fruits fru=new Apple();

fru.Convert(Apple);

解析:

A is 用于判定 D 没有Convert这个语法

12:下面的C#代码运行的时候会出现错误的是(BC)<选择二项>

A:ArrayList a1=new ArrayList();

a1.Add(100);

a1.Add(100);

B: Hashtable ht=new Hashtable();

ht.Add("张三",new object());

ht.Add("张三",new object());

C: List<string>list=new List<string>();

string name=list[0];

D: Dictionary<string,object>dict=new Dictionary<string,object>();

foreach(onject p in dict.Values){}

解析:

B 、Hashtable 键  不能出现重复。

C、 没有下标0

13:在C#中,下面代码的运行结果是(A)

public class Fruit

{

public virtual void Show()

{

Console.WriteLine("水果的味道不同");

}

}

public class Lemon:Fruit

{

public override void Show()

{

Console.WriteLine("柠檬是酸的!");

}

}

class Program

{

static void Main(string[]args)

{

Fruit lemon =new Fruit();  <new的是父类对象,因此输出的是父类的方法>

lemon.Show();

}

}

A:输出“水果的味道不同”

B:输出“柠檬是酸的!”

C:程序不出错,但什么也不输出

D:程序出错,提示对象类型不一致

14:运行以下C#代码,则输出结果是(D)

public class Child

{

public virtual void Like()

{

Console.WriteLine("孩子喜欢玩具");

}

}

public class Boy:Child

{

public override void Like(string toys)

{

Console.WriteLine("男孩喜欢"+toys);

}

}

class Program

{

static void Main(string[]args)

{

Child child=new Child();

child.Like("玩具手枪");

}

}

A:孩子喜欢玩具

B:男孩喜欢玩具手枪

C:孩子喜欢玩具

男孩喜欢玩具手枪

D:程序编译错误,什么也不输出

解析:

Boy.Like(string)没有找到适合的方法来重写

《深入.NET平台和C# 编程》内部测试 笔试题的更多相关文章

  1. 《使用Hibernate开发租房系统》内部测试笔试题

    笔试总结 1.在Hibernate中,以下关于主键生成器说法错误的是( C). A.increment可以用于类型为long.short或byte的主键 B.identity用于如SQL Server ...

  2. 编程菜鸟的日记-初学尝试编程-易传媒笔试题(C++实现)

    题目:已知存在两个非递减的有序链表List1和List2,现在需要你将两个链表合并成一个有序的非递增序列链表List3,请用C++编码实现.(所有链表均为单链表结构) 思路:此处链表是否都有表头并没有 ...

  3. python测试笔试题1

    哪一个方法用来返回变量类型? 答案 type 哪一个方法用来列出一个类下的所有属性,方法,以及变量? 答案 dir 字符串方法format是用来去掉字符串的左右空格的么? 答案 不是 python 的 ...

  4. 《深入.NET平台和C#编程》内部测试题-笔试试卷答案

    1)      以下关于序列化和反序列化的描述错误的是( C). a)      序列化是将对象的状态存储到特定存储介质中的过程 b)      二进制格式化器的Serialize()和Deseria ...

  5. TR069网管测试华为ITMS平台(内部测试使用)

    声明:本篇华为ITMS平台仅用于学习和测试使用,如果需要商用,请购买正版软件! 原创作品,转载请注明出处,严禁非法转载或者用于商业目的! email:40879506@qq.com 一. 准备软件 V ...

  6. S2---深入.NET平台和C#编程的完美总结

    1.NET简单解说 l 面向对象提升 OOP(Object Oriented  Programming)面向对象编程 AOP:(Aspache  Oriented Programming):面向切面编 ...

  7. 深入.net平台和c#编程 学习笔记

    深入.net平台和c#编程 一:理解.nteFramwork与c# 1.1,:Microsoft.net框架概述 1.2:.net框架结构 1.3.:c#语言概述 1.4:体验框架类库的强大功能 二: ...

  8. S2 深入.NET和C#编程 笔试测试错题积累

    ---恢复内容开始--- <深入.NET平台和C#编程>内部测试题-笔试试卷错题积累 1: 1) 以下关于序列化和反序列化的描述错误的是( C). a) 序列化是将对象的状态存储到特定存储 ...

  9. IC开短路测试(open_short_test),编程器测试接触不良、开短路

    http://kitebee.meibu.com/forum.php?mod=viewthread&tid=69654&extra=page%3D5 IC开短路测试(open_shor ...

随机推荐

  1. go语言 类型:数组

    在go语言中数组array是一组特定长度的有序的元素集合. go的数组类型由两部分组成——类型和长度,二者缺一不可.数组本来就是一块存储相同类型元素的连续内存空间,因此决定一个数组的类型,必然需要决定 ...

  2. css通用小笔记01——导航背景

    很多刚接触前端的可能遇到一些css能解决的小问题,我现在总结了一些,将会逐渐和大家分享,先是导航的背景问题,在网页中常常看到,当鼠标放到一个导航按钮上面是,就会出现一些特效,比如背景,这是最常用的,我 ...

  3. sharepoint 开发相关工具总结

    1.CAML Designer 2013 开发caml用 http://biwug-web.sharepoint.com/SitePages/Caml_designer.aspx 2.SharePoi ...

  4. Android布局优化策略

    我们要知道布局是否合理,可以通过Hierarchy Viewer这个工具.打开Hierarchy Viewer(定位到tools/目录下,直接执行hierarchyviewer的命令,选定需要查看的P ...

  5. Android UI线程和非UI线程

    Android UI线程和非UI线程 UI线程及Android的单线程模型原则 当应用启动,系统会创建一个主线程(main thread). 这个主线程负责向UI组件分发事件(包括绘制事件),也是在这 ...

  6. Android 下拉列表框、文本框、菜单

    1.下拉列表框(Spinner) 项目布局 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/andr ...

  7. Mac平台与Windows平台下AndroidStudio增量升级

    Android Studio增量升级什么情况下使用最合适呢? 比如现在的as版本是2.2版本,而你的as版本2.0版本,这个时候点Check For Updates就没有反应了,因为你已经2个有版本没 ...

  8. socket编程中服务器端常用函数 以及简单实现

    1 常用函数 1.1   socket() int socket(int family, int type, int protocol); socket()打开一个网络通讯端口,如果成功的话,返回一个 ...

  9. javascript和web debug技术

    在前端开发中,调试技术是必不可少的技能,本文将介绍五种前端开发必备的调试技术. Weinre移动调试 DOM 断点 debugger断点 native方法hook 远程映射本地调试 Weinre 在移 ...

  10. json对象转为字符串,当做参数传递时加密解密

    [son对象  字符串 互相转行] 比如我有两个变量,我要将a转换成字符串,将b转换成JSON对象: var a={"name":"tom","sex ...