《深入.NET平台和C# 编程》内部测试 笔试题
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# 编程》内部测试 笔试题的更多相关文章
- 《使用Hibernate开发租房系统》内部测试笔试题
笔试总结 1.在Hibernate中,以下关于主键生成器说法错误的是( C). A.increment可以用于类型为long.short或byte的主键 B.identity用于如SQL Server ...
- 编程菜鸟的日记-初学尝试编程-易传媒笔试题(C++实现)
题目:已知存在两个非递减的有序链表List1和List2,现在需要你将两个链表合并成一个有序的非递增序列链表List3,请用C++编码实现.(所有链表均为单链表结构) 思路:此处链表是否都有表头并没有 ...
- python测试笔试题1
哪一个方法用来返回变量类型? 答案 type 哪一个方法用来列出一个类下的所有属性,方法,以及变量? 答案 dir 字符串方法format是用来去掉字符串的左右空格的么? 答案 不是 python 的 ...
- 《深入.NET平台和C#编程》内部测试题-笔试试卷答案
1) 以下关于序列化和反序列化的描述错误的是( C). a) 序列化是将对象的状态存储到特定存储介质中的过程 b) 二进制格式化器的Serialize()和Deseria ...
- TR069网管测试华为ITMS平台(内部测试使用)
声明:本篇华为ITMS平台仅用于学习和测试使用,如果需要商用,请购买正版软件! 原创作品,转载请注明出处,严禁非法转载或者用于商业目的! email:40879506@qq.com 一. 准备软件 V ...
- S2---深入.NET平台和C#编程的完美总结
1.NET简单解说 l 面向对象提升 OOP(Object Oriented Programming)面向对象编程 AOP:(Aspache Oriented Programming):面向切面编 ...
- 深入.net平台和c#编程 学习笔记
深入.net平台和c#编程 一:理解.nteFramwork与c# 1.1,:Microsoft.net框架概述 1.2:.net框架结构 1.3.:c#语言概述 1.4:体验框架类库的强大功能 二: ...
- S2 深入.NET和C#编程 笔试测试错题积累
---恢复内容开始--- <深入.NET平台和C#编程>内部测试题-笔试试卷错题积累 1: 1) 以下关于序列化和反序列化的描述错误的是( C). a) 序列化是将对象的状态存储到特定存储 ...
- IC开短路测试(open_short_test),编程器测试接触不良、开短路
http://kitebee.meibu.com/forum.php?mod=viewthread&tid=69654&extra=page%3D5 IC开短路测试(open_shor ...
随机推荐
- swift学习笔记之-泛型
//泛型(Generics) import UIKit /*泛型(Generics):泛型代码可以让你编写适用自定义需求以及任意类型的灵活可重用的函数和类型.它的可以让你避免重复的代码,用一种清晰和抽 ...
- 百度在线编辑器UEditor(v1.3.6) .net环境下详细配置教程
UEditor是百度开发团队奉献的一款很不错的在线编辑器.在百度自己很多产品上都有应用,本文主要是该编辑器的配置教程. 1.下载UEditor,当前最新版本是1.3.6.这里下载的.net版本,选择U ...
- SharePoint 2013 搜索报错"Unable to retrieve topology component health. This may be because the admin component is not up and running"
环境描述 Windows 2012 R2,SharePoint 2013(没有sp1补丁),sql server 2012 错误描述 搜索服务正常,但是爬网一直在Crawling Full,但是爬不到 ...
- Linux下EclipseCDT工程和TFS的持续集成CI实践
在Linux下使用TFS自动构建,需要自动执行连接tfs服务器的操作,命令行文件包TEE-CLC-10.1.0.2011121402.zip,下载地址:http://www.microsoft.com ...
- 【Leafletjs】4.L.Map 中文API
L.Map API各种类中的核心部分,用来在页面中创建地图并操纵地图. 使用 example // initialize the map on the "map" div with ...
- JavaScript学习02 基础语法
JavaScript学习02 基础语法 JavaScript中很多基础内容和Java中大体上基本一样,所以不需要再单独重复讲了,包括: 各种算术运算符.比较运算符.逻辑运算符: if else语句.s ...
- 操作系统开发系列—12.f.在内核中添加中断处理 ●
因为CPU只有一个,同一时刻要么是客户进程在运行,要么是操作系统在运行,如果实现进程,需要一种控制权转换机制,这种机制便是中断. 要做的工作有两项:设置8259A和建立IDT. /*========= ...
- sqlite 增删改查
PersonDao1.java package mm.shandong.com.testsqlsqllite.dao; import android.content.Context; import a ...
- 虚拟机安装 Centos6
1 虚拟机安装 Centos6 1.1 前期配置 New Virtual Machine———Typical(典型安装) 选择镜像文件. 设置文件名,用户名和密码. 设置系统在虚拟机软件的名称, 设置 ...
- 使用getopts处理shell中的输入参数
在编写shell脚本中,经常要处理一些输入参数,在使用过程中发现getopts更加方便,能够很好的处理用户输入的参数和参数值. getopts用于处理用户输入参数,举例说明使用方法: while ...