已知类MyClass中事件MouseClicked定义如下:
public delegate void mydelegate();
public event mydelegate MouseClicked();
执行下列语句:
Method obj=new Method();
MyClass e=new MyClass();
e. MouseClicked +=obj.fun;
e. MouseClicked +=obj.fun;
其中Method类中包含事件处理方法fun,然后引发该MouseClicked 事件,其结果为【 】
public delegate void mydelegate();
public event mydelegate MouseClicked();
执行下列语句:
Method obj=new Method();
MyClass e=new MyClass();
e. MouseClicked +=obj.fun;
e. MouseClicked +=obj.fun;
其中Method类中包含事件处理方法fun,然后引发该MouseClicked 事件,其结果为【 】
举一反三
- 调用对象obj函数成员fun:obj.fun( ); 编译器在编译时会将其调整为( )。 A: obj->fun( ); B: obj->fun( &obj ); C: fun( obj ); D: fun( &obj );
- 在类A中定义一个无参数.无返回值的方法fun,要求使用类名A就可以调用它,该方法头的形式为( )。 A: static void fun( ) B: public void method( ) C: final void method( ) D: abstract void method( )
- 如果myclass类定义了拷贝构造函数和一个整型参数的构造函数,还重载了赋值运算符,那么语句myclass obj = 100;会 ,等价于 myclass obj = myclass(100)
- 下列语句是类myclass的一部分,obj是myclass的一个对象。 Void change(int i) { i++ } public void test() { int a=100; Change(a); Console.Writeline(a); } 则调用obj.test后,控制台输出
- 分析下列程序中类MyClass的定义 class BaseClass { public int i; } class MyClass:BaseClass { public new int i; } 则下列语句在Console 上的输出为【 】。 MyClass y = new MyClass(); BaseClass x = y; x.i = 100; Console.WriteLine("{0}, {1}",x.i,y.i);