1、1、声明一个委托public delegate int myCallBack(int x); 则用该委托产生的回调方法的原型应该是 (2) 1. void myCallBack(int x) 2. int receive(int num) 3. string receive(int x) 4. 不确定的 2、以下关于事件说法错误的是( D )。(单选) A. 事件处理需要定义事件、订阅事件和引发事件。 B. 如果没有对象订阅事件,在事件被引发时,将会引发异常。 C. 一个事件可以有多个订阅者。 D. 派生类可以继承在基类中定义的事件。 3、
2、 Public delegate int Call(int num1,int num2); 对于这个委托下面的说法错误的是( BCD )。(多选) A. 可以用static int Exa(int I,int j){}方法来实例化这个委托。 B. 委托不能关联静态方法。 C. 可以用void Exa(int I,int j){}方法来实例化这个委托。 D. 一个委托不可以委托多个方法 4、以下说法正确的是( )。(多选) A. 属性提供了对类中字段的保护。 B. 索引器不可以像方法一样进行重载。 C. 使用委托的意义在于动态调用方法。 D. 事件的发行
3、者不可以订阅该事件。 5、下列选项中,错误的是( C )。(单选) A. 接口成员的访问级别默认是公开的。 B. 一个类可以同时实现几个接口。 C. 派生类用override关键字实现接口中的方法。 D. 如果一个类具有基类并实现接口,那么基类必须写在接口的前面 6、下列选项中,错误的是( AC )。(多选) A. 抽象类的派生类必须实现抽象类的所有方法。 B. 使用override关键字可在派生类中重写抽象方法。 C. 抽象类中的方法必须是抽象方法。 D. 如果将一个类指定为抽象的,则必须使用abstract关键字。 7、下列选项中,错误的是(
4、 D )。(单选) A. override 能重写abstract override 和virtual 修饰的方法 B. Virtual访问修饰符不能与static访问修饰符一同使用。 C. New访问修饰符不能和override访问修饰符同时出现在一个方法里。 D. New能够重写父类中的抽象方法。 8、用( ABC )关键字修饰的方法,可以在其派生类中被重写。(单选) A. override B. abstract C. virtual D. interface 9、以下选项中,( D )为“IS A”关系。(单选) A. 北京和中国 B. 田
5、径比赛和奥运会 C. 老师和北大青鸟 D. 城市和首都 10、下列关于构造函数的描述正确的是( C )。(单选) A. 构造函数返回void类型。 B. 构造函数不可以用private修饰 C. 构造函数不返回任何值 D. 构造函数不能带参数 11、类成员的默认访问修饰符为( D )。(单选) A. public B. internal C. protected D. private 12、下列选项中,错误的是( B )。(单选) A. 结构中可以包含方法和数据成员。 B. 只能为结构中的数据成员赋一次值。 C. 结构不能像类一
6、样实现继承。 D. 枚举是一组已命名的数值常量。 13、下列数组声明,语法错误的是( BCD )。(多选) A. int[] numbers; B. int[2] numbers; C. byte[5][] scores; D. string names[]; 14、下列关于C#中索引器理解正确的是(D)。(选择一项) A、索引器的参数必须是两个或两个以上 B、索引器的参数类型必须是整数型 C、索引器没有名字 D、以上都不对 15、C#中,声明一个带参数的Main方法,代码为(C)。(选择一项) A、 public s
7、tatic void Main() B、 public static void Main(String[]) C、 public static void Main(String[] args) D、 public static void Main(String * args) 16、.NET的框架中的公共语言运行库提供的服务包括()。(选择两项) A、 提供通用语言规范 B、 类库的加载 C、 提供移动互连网工具集 D、 垃圾收集 17、(D)关键字用于在C#中从派生类中访问基类的成员。(选择一项) A、new B、super C、this D、bas
8、e 18、( B )命名空间在.NET Framework中又称为根命名空间. A、System.IO B、System C、System.Threading D、System.Data 19、( D )就是将值类型转换为引用类型。 A、拆箱 B、数据转换 C、值转换 D、装箱 20、命名空间用于( C )。 A、重载方法 B、初始化变量 C、简化命名冲突 D、模拟对象 21、下面( B )不可重载. A、方法 B、属性 C、索引器 D、委托 22、属性的( B )访问器用于将值赋给类的私有实例变量. A、get B、set
9、C、this D、value 23、所有c#的异常都派生自( B )类. A、Windows B、Exception C、SystemException D、CommonException 24、C#中,数组索引从( C )开始. A、1 B、-1 C、0 D、以上都不是 25、所有Windows控件都是从( )类派生的类 A、System.Windows.Forms.Control B、System.Windows.Forms.Controls C、System.Forms.Control D、以上都不是 26、值类型存储在( A )中
10、A、堆栈 B、堆内存 C、队列 D、列表 27、System的( A )命名空间提供一组接口和类,让用户可以对一组数据元素执行集合操作. A、Collections B、Data C、Refelection D、Assembly 28、用户可以通过( D )类将数据作为一组键值对来存储,这些数据是根据键值进行组织的. A、ArrayList B、Array C、IList D、Hashtable 29、线程实例的( A )方法用于开始执行线程. A、Start() B、Begin() C、Execute() D、Run() 30、C#编译器
11、将C#程序编译成什么样的代码?(C) A. 汇编语言代码 B. 机器语言代码 C. 微软中间语言代码 D. 二进制代码 31、.NET中的所有代码都由( B )管理,因此又称为“托管代码”。(单选) A. MSIL B. CLR C. JIT D. CRL 32、在C#中,下列代码的运行结果是:(B) int a = 30; int b = 20; b = a; a = 10; Console.WriteLine(a); Console.WriteLine(b); A、10 10 B、10 30
12、 C、30 20 D、10 20 33、在C#中,下列代码的运行结果是(C)(选择一项) static void Main() { int [] num = new int[] {1,2,3,4,5}; Array.Reverse(num); foreach(int i in num) { Console.Write(i); } } A、00000 B、12345 C、54321 D、不确定 34、在C#中,可以通过装箱和拆箱实现值类型和引用类型之间的相互转换,在下列代码中,有(C)处实现了装箱。
13、选择一项) int age = 5; object o = age; o = 10; age = (int)o; object oAge = age; A、1 B、2 C、3 D、4 35、下列错误的是( A )。(多选) A. Array ar = new Array(); B. Hashtable对象中的key值必须是唯一的。 C. ArrayList只能有一个维,而Array可以有多个维。 D. ArrayList类和Array类同属于System.Collections命名空间。 36、分析下面代码:() abstr
14、act class BaseClass { public virtual void MethodA() { Console.WriteLine("BaseClass"); } public virtual void MethodB() { Console.WriteLine(“BaseClass:MethodB”); } } class Class1: BaseClass { public void MethodA() { Console.WriteL
15、ine("Class1"); } public override void MethodB() { Console.WriteLine(“Class1:MethodB”); } } class MainClass { public static void Main(string[] args) { BaseClass o = new Class1(); o.MethodA(); o.MethodB(); } } 请问,此程序输出结果是: (C) A. BaseCla
16、ss BaseClass:MethodB B. Class1 BaseClass:MethodB C. BaseClass Class1:MethodB D.Class1 Class1:MethodB 37、分析下面的代码:() class A { public A() { PrintFields(); } public virtual void PrintFields() { Console.WriteLine("x={0},y={1}",5,6); } } class B:A { int x=1
17、 int y; public B() { y=9; } public override void PrintFields() { Console.WriteLine("x={0},y={1}",x,y); } public static void Main() { new B (); } } 此示例的输出结果应为( D )。(单选) A. X=5,y=6 X=1,y=9 B. X=5,y=6 C. X=1,y=9 D. X=1,y=0 38、以下的C#代码,用来判断
18、两个整数是否相等: class C { static void Main(string [] args) { int A; int B; if A = B Console.Write("A = B"); } } 代码中存在的错误包括以下的几项,除了(D)(选择一项) A、 变量A和B在使用以前,必须进行赋值 B、 判断A 和B是否相等,应使用“==”符号 C、 A和B是否相等的判断,应使用括号括起来 D、 If下面的执行代码,应使用花括号括起来 39、任何控件只要有什么属性 就可以随意的向该控件中添加子控件?(D)
19、 A、ControlAdded B、Control C、TextBox D、Controls 40.下列选项中,(C)是引用类型。 A、enum类型 B、struct类型 C、string类型 D、int类型 41.已知有如下声明:int[][] myArray3=new int[3][] {newint[3]{5,6,2}, new int[5]{6,9,7,8,3}, new int[2]{3,2}}; 请问: myArray3[2][2]的值是(D)。 A、9 B、2 C、6 D、越界 42. 以下的C#代码段:()
20、Public struct person { string Name; int Age; } public static void Main() { Hashtable A; Person B; } 以下说法正确的是(A)。(选择一项) A、 A为引用类型的变量,B为值类型的变量 B、 A为值类型的变量,B为引用类型的变量 C、 A和B都是值类型的变量 D、 A和B都是引用类型变量 43.下面描述错误的是(C)。 A、窗体也是控件; B、窗体也是类; C、控件是从窗体继承来的; D、窗体的父类是控件类; 44、下面的代码实现了设计模式
21、中的什么模式(C) public class A { private A instance; private A() { } public static A Instance { get { if ( A == null ) A = new A(); return instance; } } } A. Factory B. Abstract Factory C. Singleton D. Builder 45、阅读代码: class Class1 { public static i
22、nt Count = 0; static Class1() { Count++; } public Class1() { Count++; } } Class1 o1 = new Class1(); Class1 o2 = new Class1(); 请问,Class1.Count的值是多少?( D) A、1 B、2 C、3 D、4 46、三种常用的字符串判空串方法:() 1、bool isEmpty = (str.Length = = 0); 2、bool isEmpty = (str = = String.Empty); 3、bo
23、ol isEmpty = (str = = ""); 4、boll isEmpty = (str.Equals("")) 哪种方法最快? A、1 B、2 C、3 D、4 47、 根据线程安全的相关知识,分析以下代码,当调用test方法时i>10时是否会引起死锁?(B) public void test(int i) { lock(this) { if (i>10) { i--; test(i); } } } A、会锁死 B、不会锁死 48. 下面的C#代码用来执行文件拷贝: using System; u
24、sing System.IO; class Copy { static void Main(string[] args) { Directory.CreateDirectory(“C#.NET”); File.Copy(“ACCP.TXT”,”C#.NET\\ACCP.TXT”); Console.ReadLine(); } } 假设当前目录下文件“ACCP.TXT”存在,以下说法正确是的(D)。(选择一项) A、 程序不能编译通过,因为File类中包含Copy方法,类名Copy产生重复 B、 程序不能编译通过,因为Directory、File没有被实例化 C、 程
25、序能编译通过,但会产生运行时错误,因为创建的文件夹不允许包含“#”字符 D、 程序能编译通过,并且能够正确执行文件拷贝 49. 阅读以下的C#代码: public class TEApp { public static void ThrowException() { throw new Exception(); } public static void Main() { try { Console.WriteLine(“try”); ThrowException(); } catch(Exception e) { Console.WriteLine(“catch”); } finally { Console.WriteLine(“finally”); } } } 请问代码运行结果是(A)。(选择一项) A、 try catch finally B、 try C、 catch finally D、 try Finally 50. 在.NET中,以下都是System.IO中定义的类,除了()。(选择一项) a) TextWriter b) Stream c) FileReader d) FileSystemInfo
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4009-655-100 投诉/维权电话:18658249818