一、
1、 定义一个事件,需要使用的关键字是() event
2、 在类的成员中,用于存储数据的是() 字段
3、 类的以下特性中,可以用于方便地重用已有的代码和数据的是() 继承
4、装箱、拆箱操作发生在:() 引用类型与值类型之间
5、 有关抽象类和抽象方法,下面哪种说法是错误的?() 抽象方法实现由static方法提供 6、 关于接口哪个正确? 一个类可以实现多个接口
7、下列关于重载的说法,错误的是()
方法可以通过指定不同的返回值类型重载
8、下列选项中,()是引用类型。 数组类型
9.关于继承的说法正确的是: 子类将继承父类的非私有成员
10、 下列可以在命名空间中单独定义的是() 委托
11、 关于多态,下列说法错误的是() 父类方法可以使用关键字new
12、下列关于C#中索引器理解正确的是()
索引器用this关键字定义 13、抽象方法()
是没有方法体的方法 14、下列描述错误的是()
一个类可以有多个基类和实现多个接口 15、 out函数参数是()的参数
按地址传递,形参与实参共用一个内存区域
16、 声明一个委托public delegate int myCallBack(int x); 则用该委托产生的回调方法的原型应该是() int receive(int num)
17、下面有关构造函数的说法,不正确的有 () 构造函数可访问域必须是public
18、下列对文件处理描述正确的是()
可以创建FileInfo类的实例来管理文件
19、以下程序的的输出结果是() int a = 3, b = 4; bool c = a < 3;
int d = !(a > b) || c ? --a : ++b; Console.Write(d); 2
20、以下关于while和do…while描述正确的是() do…while循环体至少执行一次 二、
1、 关于委托与事件,以下说法正确的有() 事件处理方法的定义需与委托类型的签名一致 事件是一种特殊的多播委托
2、 以下属于隐式类型转换的有()
short a = 1;int b = a; object o = new Button();
3、以下关于使用static关键字定义静态方法的说法正确的是()
类的静态方法可以访问静态成员,不可以直接访问实例成员 类的非静态方法可以访问静态成员,也可以访问实例成员 4、以下类成员的可访问域正确的有()
public internal protected private
5、以下数组定义正确的是()
int [] array = {1,2,3,4} int [] array = new int[]{1,2,3,4} int [] array = new int[4]{1,2,3,4} 编程
abstract class Employee {
protected string id; protected string name; protected int baseSalary;
public Employee(string _id, string _name, int _baseSalary) {
id = _id;
name = _name;
baseSalary = _baseSalary; }
public abstract int getMontySalary(); public string getInfo() {
return \工号:\姓名:\月薪:\
} }
class Manager : Employee {
protected string post;
protected int postAllowance;
public Manager(string _id, string _name, int _baseSalary, string _post, int _postAllowance)
: base(_id, _name, _baseSalary) {
post = _post;
postAllowance = _postAllowance; }
public override int getMontySalary() {
return baseSalary + postAllowance; } }
class Ordinary : Employee {
protected int monthAllowance;
public Ordinary(string _id, string _name, int _baseSalary, int _monthAllowance) : base(_id, _name, _baseSalary) {
monthAllowance = _monthAllowance; }
public override int getMontySalary() {
return baseSalary + monthAllowance; } }
class Company {
private Employee[] employees;
public Company(Employee[] _employees) {
employees = _employees; }
public void getCompanyInfo() {
foreach (Employee e in employees) {