C#复习题
阅读原文时间:2023年07月15日阅读:2

1.以下(D )不是 C#中方法的參数的类型。

A.值类型B.引用型C.输出型D.属性

2.C#中的数据类型分为值类型和引用类型,以下(B )不属于引用类型。

A.类 B.枚举 C.接口 D.数组

3.声明一个托付:

public delegate int myCallBack(int x);

则能用该托付引用的方法是( D)。

A.void myCallBack(int x) B.int receive(int num)C.string receive(int x) D.不确定

4.C#语言中,值类型包含:简单类型、结构类型和( C)。

A.小数类型B.整数类型C.枚举类型D.类类型

5.假定一个 10 行 20 列的二维整型数组,下列哪个定义语句是正确的( C)。

A.int[]arr = new int[10,20]; B.int[]arr = int new[10,20];

C.int[,]arr = new int[10,20]; D.int[,]arr = new int[20;10];

6.以下的叙述不对的是(B )

A.类 A 中定义一个方法 static void f();,a1 是 A 的一个对象,则对 f 的引用为 A.f()

B.接口能够包括方法、属性、索引指示器、事件、常量和域。

C.接口通过类和结构来实现。

D.在.NET2005 中,使用 partial keyword声明类,就能够将类的一部分放在一个文件里,而

将还有一部分放在还有一个文件里。

7.以下( D)不能作为 C#中类修饰符。

A.newB.pubic、privateC.protected、internalD.override

8.有下面代码片段:

class Class1

{

public static int Count = 0;

public Class1(){Count++;}

}

Class1 o1 = new Class1();

Class1 o2 = new Class1();

请问,Class1.Count 的值是(B )。

A.1 B.2 C.3 D.4

9.引用类型主要有 4 种:类类型、数组类型、接口类型和( C)。

A.对象类型B.字符串类型C.托付类型D.整数类型

10.数据类型转换的类是(C )。

A.Mod B. Const C.Convert D.Single

11.在 C#.Net 中,用来创建主菜单的对象是( C)。

A.MenuB.MenuItemC.MenuStripD.Item

12.在 VC#.Net 中,能够标识不同的对象的属性是(B )。

A.TextB.NameC.IndexD.Title

13.以下所列举的应用程序中,不是多文档应用程序的是( C)。

A.Word B.Excel C.记事本 D. PowerPoint

14.在类的成员中,用于存储属性值得是( C)。

A.属性B.方法C.字段D.事件

15.在.NET 中,从属性的读写特性上来进行分类,能够划分为下面三种,除了( D)。

A.仅仅读属性B.仅仅写属性C.读写属性D.不可读不可写的属性

16.SqlCommand 对象的 ExecuteReader 方法返回一个(B )。

A.XmlReader B.SqlDataReader C.SqlDataAdapter D.DataSet

6.建立訪问键时,需在菜单标题的字母前加入的符号是( D)

A.! B.#C.$ D.&

7.载入窗口时触发的事件是(B )

A.ClickB.LoadC.GotFoucsD.DoubleClick

8.改变窗口的标题,需改动的窗口属性是(A )。

A.TextB.NameC.TitleD.Index

9.类的下面特性中,能够用于方便地重用已有的代码和数据的是(C )。

A.多态B.封装C.继承D.抽象

10.在.NET 框架类库中,全部与多线程机制应用相关的类都放在( C)命名空间中。

A.System.SysThread B.System.Thread C.System.Threading D.NetException

11.接口能够包括一个和多个成员,以下( D)不能包括在接口中。

A.方法、属性B.索引指示器C.事件D.常量、域

12.下面( B)不是 C#的keyword。

A.finallyB.importC.interfaceD.sbyte

13.假定有一个类 A,类 A 中定义一个方法 static void f(); a1 是 A 的一个对象,则以下对 f的调用正确的为( A)。

A.A.f(); B.a1.f(); C.f(); D.都不对

14.异常是由 try 语句来处理的,下面(B )处理形式不对。

A.try---catch(s)B.try---throwC.try---finallyD.try---catch(s)---finally

15.接口是通过( A)来实现。

A.类或结构B.属性C.方法D.事件

1.(名词解析)简述 C#语言中数据类型分类.

C#的数据类型分为值类型、引用类型和指针类型三大类。值类型包含简单类型、结构类

型和枚举类型,当中简单类型分为整数类型、布尔类型、字符类型、浮点类型和 decimal 类

型。引用类型包含类类型、接口类型、托付类型和数组类型。指针类型仅仅能用于不安全模式。

2. (简答)(名词解析简答)ADO.NET的一个对象

1.Connection 对象

在 ADO.NET 对象模型中,Connection 对象用于与指定的数据源建立连接。.NET 框架中有两个经常使用 Connection 对象:一个是 OleDbConnection,用于大多数的数据库连接,一个SqlConnection,专门用于对 SQL Server 的连接。Connection 对象的主要属性是ConnectionString,用于设置连接字符串,比如:myConn.ConnectionString ="Persist Security Info=False;Integrated Security=SSPI;InitialCatalog=Northwind;server=(local)"依据所所訪问的数据源的不同,有不同的
Connection 对象与之相应,这些 Connection对象各自是 SqlConnection 对象、OleDbConnection 对象、OdbcConnection 对象和OracleConnection 对象,应依据訪问数据源的不同选择相应的 Connection 对象。

2.Command 对象

Command 对象用于运行对数据源各种操作的命令,包含检索、插入、删除、改动等操作。能够使用 SQL 语句,也能够使用存储过程来完毕这些操作。依据所所訪问的数据源的不同,有不同的 Command 对象与之相应,这些 Command 对象分

别是 SqlCommand 对象、OleDbCommand 对象、OdbcCommand 对象和 OracleCommand 对象,应依据訪问数据源的不同选择对应的 Command 对象。假设要使用存储过程来对数据源进行操作,应该把 CommandType 属性设置为StoredProcedure,同一时候把 CommandText 属性设置为存储过程的名字。假设存储过程使用參数,能够使用 Command 对象的 Parameters 属性来訪问存储过程的输入和输出參数及返回值。

3.DataReader 对象

DataReader 对象用于从数据源中读取向前的、仅仅读数据流,是一个简易的数据集,使用它读取记录时通常比从 DataSet 更快。DataReader 对象是 Command 对象的 ExecuteReader方法从数据源中检索数据时创建的。

要想获得 DataReader 对象中的数据,必须组合使用 DataReader 对象的 Read 方法和相应的 Get 方法。Read 方法用于移动记录指针到下一行数据,GetDateTime、GetDouble、GetGuid、GetInt32 等 Get 方法,能够获得当前行的每一列信息。这些方法要求使用列的名称或索引值,以确定获得哪一列的信息。依据所用的.NET Framework 数据提供程序不同,有不同的 DataReader 对象与之相应。这些 DataReader 对象各自是 SqlDataReader
对象、OleDbDataReader 对象、OdbcDataReader对象和 OracleDataReader 对象。应依据訪问数据源的不同选择对应的 DataReader 对象。注意:不能用 DataReader 改动数据库中的记栩,它是採用向前的,仅仅读的方式读取数据库。

4.DataAdapter 对象

DataAdapter 对象用作 DataSet 和数据源之间的连接器以便检索和保存数据。DataAdapter 通过映射 Fill(这更改了 DataSet 中的数据以便与数据源中的数据相匹配)和Update(这更改了数据源中的数据以便与 DataSet 中的数据相匹配)来提供这一连接器,它用于从数据源检索数据并填充 DataSet 中,也可用于将对 DataSet 的更改解析回数据源。DataAdapter 使.NET Framework 数据提供程序的 Connection 对象连接到数据源,并使用Command
对象从数据源检索数据以及将更改解析回数据源。

依据所用的.NET Framework 数据提供程序不同,有不同的 DataAdapter 对象与之相应。这 些 DataAdapter 对 象 分 别 是 SqlDataAdapter 对 象 、 OleDbDataAdapter 对 象 、

OdbcDataAdapter 对象和 OracleDataAdapter 对象。应依据訪问数据源的不同选择对应的DataAdapter 对象。

5.DataSet 对象

DataSet 对象是支持 ADO.NET 的断开式、分布式数据方案的核心对象。DataSet 是数据的内存驻留表示形式,不管数据源是什么,它都会提供一致的关系编程模型,它能够用于

多种不同的数据源,用于 XML 数据,或用于管理应用程序本地的数据。DataSet 表示包含相关表、约束和表间关系在内的整个数据集,能够把 DataSet 看作是内存中的数据源库。

3. (简答)什么是重载?override与重载的差别? 

重载是指针对所继承下来到方法,又一次设计其处理方式,为将来原本处理方式覆盖过去。在派生类要覆盖的方法前加 override 修饰,而基类的同名方法前加virtual修饰。这样就能实现多态。多态指一个程序中同名的不同方法共存的情况。有两种形式的多态–重载与重写。

4. (简答)值类型和引用类型的差别。

值类型的变量本身包括他们的数据,而引用类型的变量包括的是指向包括数据的内存块

的引用或叫句柄。

值类型变量存储在堆栈。每一个程序在运行时都有自己的堆栈,其它程序不能訪问。

引用类型存储在堆。引用类型存贮实际数据的引用值的地址。

C#中的引用类型有 4 种(类、代表、数组、接口)

5.(简答)类和对象

6.(简答)Socket编程思想