当前位置:编程学习 > C#/ASP.NET >>

网上面试题 疑惑

1,根据委托(delegate)的知识,请完成以下用户控件中代码片段的填写: 
namespace test 

public delegate void OnDBOperate(); 
public class UserControlBase : System.Windows.Forms.UserControl 

public event OnDBOperate OnNew; 
privatevoidtoolBar_ButtonClick(objectsender,System.Windows.Forms.ToolBarButtonClickEventArgs e)

if(e.Button.Equals(BtnNew)) 

//请在以下补齐代码用来调用OnDBOperate委托签名的OnNew事件。


}
答:if( OnNew != null )  
    OnNew( this, e ); 

在这题中 OnDBOperate委托无参数  但是答案中OnNew( this, e ); 有参数  不对吧


2,  using System;
     class A
     {
          public A()
           {
                PrintFields();
           }
          public virtual void PrintFields(){}
      }
      class B:A
      {
           int x=1;
           int y;
           public B()
   {
               y=-1;
           }
           public override void PrintFields()
           {
               Console.WriteLine("x={0},y={1}",x,y);
           }
当使用new B()创建B的实例时,产生什么输出?
答:X=1,Y=0;x= 1 y = -1

应该是  x=1,y=0

3,String s = new String("xyz");创建了几个String Object?
答:两个对象,一个是“xyx”,一个是指向“xyx”的引用对象s。

编译都不能通过  何来对象????

上面3题 网上随处可见  答案都一样;  求解释 --------------------编程问答-------------------- 1.event的委托是预定义的EventHandler...

2.最基础的多态...

3.没有这个重载,这是java语法...就算有,在.NET中对象一词指实例...

这种题都不会说明你门都没入,离面试还远得很...这类题也不适合面试,最多能当专业课前几周的学生作业...
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,