1、Tom;B. string str = C. string str();D. string str(Tom3. 在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明成( )。A. sealed 方法 B. public 方法 C. virtual 方法 D. override 方法4. 用关于重载,以下叙述错误的是( )。A. 重载是指在类的内部存在若干个方法名称一致但是参数列表不同的方法B. 方法重载是指创建多个名称相同的方法,其中每个方法都在某些方面具有唯一性,以便编译器能够正确区别它们C. 重载构造函数的方式与重载方法的方式相同D. 方
2、法的重载允许两个方法的名称和参数列表相同,而返回类型不同5. 下面是一个派生类的定义语句:public class car: vehicle private string model=”L”; private int wheelNo=4;请指出针对该定义的正确的说法( )。A. vehicle类是car类的一个特例,因而它可以被继承B. car类是父类,vehicle类是子类C. 在car类中定义的成员model和wheelNo会删除vehicle类中同名的成员D. car类是vehicle类的一个特例,它可以继承vehicle类中除构造函数和析构函数以外的所有成员6.( )关键字可以用来访问
3、当前对象的基类对象。Aobject Bthis Cas Dbase7. 下面有关虚方法的描述正确的是( )。A. 虚方法能在程序运行时,动态确定要调用的方法,因而比非虚方法更灵活,更方便B. 在定义虚方法时,基类和派生类的方法定义语句中都要带上virtual修饰符C. 重写基类的虚方法时,为消除隐藏基类成员的警告,需要带上new修饰符D. 在重写虚方法时,需要同时带上override和virtual修饰符8.分析下列代码段:static void Main(string args) String words=new stringa,bc; foreach (string word in wor
4、ds) word = abc Console.WriteLine(word); Console.ReadKey();最终的运行结果是什么?A. bc ac ab B. abc abc abc C. 不能正确编译 D. a b c9. 已知类MyClass 中事件MouseClicked 定义如下:public static event MouseClickedListener MouseClicked;执行下列语句:MouseClicked += new MouseClickedListener(obj.DoSomething);然后引发该MouseClicked 事件,其结果为:A. obj
5、.DoSomething 方法被调用4 次B. obj.DoSomething 方法被调用2 次C. obj.DoSomething 方法被调用1 D. obj. DoSomething 方法不会被调用10.下列关于多态的说法中,那个是正确的?A. 虚方法是实现多态的唯一手段B. 重写虚方法时可以为虚方法指定别称C. 多态性是指以相似的手段来处理不相同的派生类D. 抽象类中不可以包含虚方法 11. C#中TestClass为一自定义类,其中有以下属性定义public void Property使用以下语句创建了该类的对象,并使变量obj引用该对象:TestClass obj=new TestC
6、lass();那么,可通过什么方式访问类TestClass的Property属性( )。A.MyClass.Progerty; B.obj: Property; C.obj. Property; D.obj. Property();12.下列关于继承说法中,哪个选项是正确的?A. 继承是指派生类可以获取其基类特征的能力B. 继承最主要的优点是提高代码性能C. 派生类可以继承多个基类的方法和属性D. 派生类必须通过base关键字调用基类的构造函数13.对于trycatchfinally如下结构,下面说法中,哪项是正确的?A. 在finaly块中放置return语句,编译可以通过B. 无论程序是否
7、出现异常,finally块总是被执行的C. 一个try块只能和一个catch块对应D. 异常处理时,try块是可以省略的14.分析下列程序代码:using System;class Program static void Main(string args) string testString = Visual Studio 2008 string newString = string.Empty; foreach (char ch in testString) if (ch = i | ch = u) continue; newString += ch.ToString(); Console.
8、WriteLine(newString);哪项的输出是正确的?A. iu ui B. VC. Vsal Stdo 2008 D. Visual Studio 200815在使用FileStream 打开一个文件时,通过使用FileMode 枚举类型的( )成员,来指定操作系统打开一个现有文件并把文件读写指针定位在文件尾部。A. Append B. Create C. CreateNew D. Truncate 16. 以下类型中,不属于值类型的是( )。A. 整数类型 B. 布尔类型 C. 枚举 D. 类类型17. 用户自定义的异常类应该从哪个类中继承( )。A. System.Argumen
9、tException B. System.IO.IOExceptionC. System.SystemException D. System.ApplicationException18. 以下关于抽象类的说法,其中错误的是( )。A. 抽象类可以实例化 B. 抽象类可以包含抽象方法C. 抽象类可以包含非抽象方法 D. 抽象类中可以定义成员变量19. 下列语句声明了一个委托:public delegate int myCallBack(int x);则用该委托产生的回调方法的原型应该是( )。A.void receive (int x) B.int receive(int num)C.int
10、receive( ) D.不确定的20. 类MyClass 中有下列方法定义:public void testParams(params int arr) Console.Write (使用Params参数!public void testParams(int x,int y)使用两个整型参数!请问上述方法重载有无二义性?若没有,则下列语句的输出为( )。MyClass x = new MyClass();x.testParams(0);x.testParams(0,1);x.testParams(0,1,2);A. 有语义二义性;B. 使用Params 参数!使用Params 参数!C. 使
11、用Params 参数!D. 使用Params 参数!21. 下列关于接口的说法中,哪个选项是正确的?( )。A. 一个类可以有多个基类和多个基接口B. 抽象类和接口都不能被实例化C. 抽象类和接口都可以对成员方法进行实现D.派生类可以不实现抽象基类的抽象方法,但必须实现继承的接口的方法22. 下列关于多态的说法中,那个是正确的?D. 抽象类中不可以包含虚方法23. 已知类Base、MyClass 的定义如下class Base public void Hello()System.Console.WriteLine(Hello in Base!class Derived : BaseHello
12、in Derived!则下列语句在控制台中的输出结果为( )。Derived x = new Derived();x.Hello();A. Hello in Base! B. Hello in Derived!C. Hello in Base! D. Hello in Derived! Hello in Base!24. 下面哪一个不是C#关键字? ( )A. true B. sizeof C. super D. void25. 以下是几条定义、创建并初始化一维数组的语句,其中错误的是( )。A. int score = new int 3 10, 20, 30;B. int score; s
13、core = new int 3 10, 20, 30;C. int score = 10, 20, 30;D. int score = new int 4 10, 20, 30;26. 下列的( )不是构造函数的特征。A. 构造函数的函数名和类名相同 B. 构造函数可以重载 C. 构造函数可以带有参数 D. 可以指定构造函数的返回值27. 在类TestClass中的构造函数有如下重载:public TestClass(params int _value) Console.WriteLine(“params contrctor!”);public TestClass(int x,int y)
14、Console.WriteLine(“two int contructor!运行下面的代码后,TestClass obj1=new TestClass(0);TestClass obj2=new TestClass(1,3);TestClass obj3=new TestClass(1,3,4);最后的输出结果是什么?A. params contrctor!two int contructor!B. params contrctor! params contrctor!C.无法编译通过D. params contrctor! two int contructor!28. 下面关于Hashtab
15、le与Dictionary的区别,正确的是( )。A. Hashtable和Dictionary中都可以添加任何类型的对象B. Hashtable和Dictionary都需要强制转换后才能访问集合元素C. 在定义Hashtable对象时,无需指定键、值的类型,而定义Dictionary对象时,必须指定键、值的类型DHashtable和Dictionary=a|chz lowerCase+=ch.ToString; Console.WriteLine(小写字母有:+lowerCase); 2. 下述代码用于重写Message方法。请分析下述代码,并更正错误代码行。interface IMsgvo
16、id Message();public class MyClass : IMsg public virtual void Message() Console.WriteLine(MyClass public class MyDerivedClass : MyClass public void Message() Console.WriteLine(MyDerivedClass3. 下面代码的功能是遍历整个数组并将其显示出来。 string myArray = new string C#C+VBjava for (int i = 0; i myArray.Length - 1; i+) Cons
17、ole.WriteLine(myArrayi); System.Console.ReadKey();4. 请补充程序,使输出结果为:a=20,b=10。(在原题填空。 static void Main() int a = 10, b = 20; Swap( , );引用传递: a = 0, b = 1, a, b); Console.ReadLine(); public static void Swap( , ) int z = x; x = y; y = z;5.下面程序中两个方法需要实现的功能是:int数组相加,即数组中的每项相加,以及string类型的相加,即把一串字符串接到另一串字符串
18、后面。请分析下列代码段,并在空白行补全visual C#代码。 int result=new intarray1.Length ; for (int i=0;iarray1.Length ;i+) resulti =array1i +array2i; return result; string spaceStr = , result = null; result = str1 + spaceStr + str2;static void Main(string arges) int a = 1, 2, 3, , b = 4, 5, 6 ; int sumArray = new int3; str
19、ing str1 = visual, str2 = studio string sumString = null; sumArray = Add(a, b); sumString = Add(str1, str2);6.定义一个抽象类Vehicle,然后再定义它的一个派生类Truck,Truck类实现Vehicle类抽象方法和虚拟方法。请把程序补充完整。public class Vehicle private float speed; public float Speed get return speed; set speed = value; public Vehicle(float spe
20、ed) this.speed = speed; public virtual float Run(float distance) return distance / speed; public abstract void Speak();public class Truck : Vehicle private float weight; public float Weight get return weight; private float load; public float Load get return load; public Truck(int weight, int load) : base(50) this.weight = weight; this.load = load; public float Run(float distance) return (1 + load / Weight / 2) * base.Run(distance);
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1