欢迎光临北大青鸟福州新生代校区

我的位置: 首页 >> .NET面试题大全(五)

.NET面试题大全(五)

2017-06-10

来源:admin

  .NET面试题大全(五)

  111.Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?

  答:不能,可以实现接口

  112.Static Nested Class 和 Inner Class的不同,说得越多越好

  答:Static Nested Class是被声明为静态(static)的内部类,它可以不依赖于外部类实例被实例化。而通常的内部类需要在外部类实例化后才能实例化。

  113.,和的区别。

  是位运算符,表示按位与运算,是逻辑运算符,表示逻辑与(and).

  114.HashMap和Hashtable的区别。

  答:HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable.

  115.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?

  答:short s1 = 1; s1 = s1 + 1; (s1+1运算结果是int型,需要强制转换类型)

  short s1 = 1; s1 += 1;(可以正确编译)

  116.Overloaded的方法是否可以改变返回值的类型?

  答:Overloaded的方法是可以改变返回值的类型。

  117.error和exception有什么区别?

  答:error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。

  exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。

  118.<%# %> 和 <% %> 有什么区别?

  答:<%# %>表示绑定的数据源

  <% %>是服务器端代码块

  119.你觉得ASP.NET 2.0(VS2005)和你以前使用的开发工具(.Net 1.0或其他)有什么最大的区别?你在以前的平台上使用的哪些开发思想(pattern / architecture)可以移植到ASP.NET 2.0上 (或者已经内嵌在ASP.NET 2.0中)

  答:1 ASP.NET 2.0 把一些代码进行了封装打包,所以相比1.0相同功能减少了很多代码.

  2 同时支持代码分离和页面嵌入服务器端代码两种模式,以前1.0版本,.NET提示帮助只有在分离的代码文件,无    法 在页面嵌入服务器端代码获得帮助提示,

  3 代码和设计界面切换的时候,2.0支持光标定位.这个我比较喜欢

  4 在绑定数据,做表的分页.UPDATE,DELETE,等操作都可以可视化操作,方便了初学者

  5 在ASP.NET中增加了40多个新的控件,减少了工作量

  120.重载与覆盖的区别?

  答:1、方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系

  2、覆盖只能由一个方法,或只能由一对方法产生关系;方法的重载是多个方法之间的关系。

  3、覆盖要求参数列表相同;重载要求参数列表不同。

  4、覆盖关系中,调用那个方法体,是根据对象的类型(对象对应存储空间类型)来决定;重载关系,是根据调    用时的实参表与形参表来选择方法体的。

  121.描述一下C#中索引器的实现过程,是否只能根据数字进行索引?

  答:不是。可以用任意类型。

  122.在C#中,string str = null 与 string str = " " 请尽量使用文字或图象说明其中的区别。

  答:null是没有空间引用的;

  " " 是空间为0的字符串;

  123.分析以下代码,完成填空

  string strTmp = "abcdefg某某某";

  int i= System.Text.Encoding.Default.GetBytes(strTmp).Length;

  int j= strTmp.Length;

  以上代码执行完后,i= j=

  答:i=13.j=10

  124.SQLSERVER服务器中,给定表 table1 中有两个字段 ID、LastUpdateDate,ID表示更新的事务号, LastUpdateDate表示更新时的服务器时间,请使用一句SQL语句获得最后更新的事务号

  答:Select ID FROM table1 Where LastUpdateDate = (Select MAX(LastUpdateDate) FROM table1)

  125.分析以下代码。

  public static void test(string ConnectString)

  {

  System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection();

  conn.ConnectionString = ConnectString;

  try

  {

  conn.Open();

  …….

  }

  catch(Exception Ex)

  {

  MessageBox.Show(Ex.ToString());

  }

  finally

  {

  if (!conn.State.Equals(ConnectionState.Closed))

  conn.Close();

  }

  }

  请问

  1)以上代码可以正确使用连接池吗?

  答:回答:如果传入的connectionString是一模一样的话,可以正确使用连接池。不过一模一样的意思是,连字符的空格数,顺序完全一致。

  2)以上代码所使用的异常处理方法,是否所有在test方法内的异常都可以被捕捉并显示出来?

  答:只可以捕捉数据库连接中的异常吧. (finally中,catch中,如果有别的可能引发异常的操作,也应该用try,catch。所以理论上并非所有异常都会被捕捉。)

  126.公司要求开发一个继承System.Windows.Forms.ListView类的组件,要求达到以下的特殊功能:点击ListView各列列头时,能按照点击列的每行值进行重排视图中的所有行 (排序的方式如DataGrid相似)。根据您的知识,请简要谈一下您的思路:

  答:根据点击的列头,包该列的ID取出,按照该ID排序后,在给绑定到ListView中

  127.什么是WSE?目前最新的版本是多少?

  答:WSE (Web Service Extension) 包来提供最新的WEB服务安全保证,目前最新版本2.0。

  128.在下面的例子里

  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(){