经典.net面试标题

1简述 private、 protected、 public、 internal 修饰符的走访权限。

答 . private :   私有成员, 在类的里边才方可访问。

     protected : 怜惜成员,该类内部和继承类中得以访问。

     public :    公共成员,完全公之于世,没有访问限制。

     internal:   在相同命名空间内能够访问。

 

2 .列举ASP.NET 页面之间传递值的三种艺术。

答. 1.使用QueryString,  如….?id=1; response. Redirect()….

    2.使用Session变量

3.使用Server.Transfer

4.使用Application

5.使用Cache

6使用HttpContext的Item属性

7.施用文件

8.运用数据库

9.使用Cookie

 

3. 一列数的条条框框如下:
壹 、① 、二 、三 、⑤ 、八 、1③ 、2① 、34……  求第①14人数是稍稍, 用递归算法完毕。

答:public class MainClass

    {

        public static void Main()  

        {

            Console.WriteLine(Foo(30));

        }

        public static int Foo(int i)

        {

            if (i <= 0)

                return 0;

            else if(i > 0 && i <= 2)

                return 1;

            else return Foo(i -1) + Foo(i – 2);

        }

    }

 

4.C#中的委托是哪些?事件是否一种委托?

答 :     

 委托能够把多个措施作为参数代入另1个措施。

 委托能够驾驭为指向二个函数的引用。

 是,是一种特有的寄托

 

5.override与重载的差距

答 :

 override 与重载的区分。重载是方法的称号一致。参数或参数类型分歧,举行频仍重载以适应差别的内需

 Override 是拓展基类中等高校函授数的重写。实现多态。

 

6.要是在1个B/S结构的类别中须求传递变量值,不过又不能够运用Session、Cookie、Application,您有两种方式开始展览拍卖?

答 :

同第2题

 

7.请编制程序遍历页面上存有TextBox控件并给它赋值为string.Empty?

答:

      foreach (System.Windows.Forms.Control control in this.Controls)

      {

 if (control is System.Windows.Forms.TextBox)

 {

     System.Windows.Forms.TextBox tb =
(System.Windows.Forms.TextBox)control ;

     tb.Text = String.Empty ;

 }

      }

 

8.请编制程序完结二个冒泡排序算法?

答:

        int [] array = new int [*] ;

 int temp = 0 ;

 for (int i = 0 ; i < array.Length – 1 ; i++)

 {

  for (int j = i + 1 ; j < array.Length ; j++)

  {

   if (array[j] < array[i])

   {

    temp = array[i] ;

    array[i] = array[j] ;

    array[j] = temp ;

   }

  }

 }

 

9.讲述一下C#中索引器的贯彻进度,是不是只可以依照数字进行索引?(索引器是对品质的卷入,具体查看msdn)

答:不是。能够用随机档次。

 

10.求以下表明式的值,写出您想到的一种或三种实现格局: 1-2+3-4+……+m

答:

    int Num = this.TextBox1.Text.ToString() ;

 int Sum = 0 ;

 for (int i = 0 ; i < Num + 1 ; i++)

 {

  if((i%2) == 1)

  {

   Sum += i ;

  }

  else

  {

   Sum = Sum  – I ;

  }

 }

 System.Console.WriteLine(Sum.ToString());

 System.Console.ReadLine() ;

 

11.用.net做B/S结构的种类,您是用几层构造来支付,每一层之间的涉嫌以及为什么要如此分层?

答:使用MVC形式分层

一般为3层

        数据访问层,业务层,表示层。

 数据访问层对数据库实行增加和删除查改。

 业务层一般分为二层,业务表观层完成与表示层的关系,业务规则层完结用户密码的安全等。

 表示层为了与用户交互例如用户增加表单。

优点:  分工分明,条理清晰,易于调试,而且全部可扩充性。

缺陷:  增添基金。

 

12.在下边包车型地铁事例里

     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

 

13.怎么叫应用程序域?

答:应用程序域能够清楚为一种轻量级进程。起到安全的机能。占用能源小。

 

14.CTS、CLS、CL奥迪Q5分别作何解释?

答:CTS:通用语言系统。CLS:通用语言专业。CL本田UR-V:公共语言运转库。

 

15.如何是装箱和拆箱?

答:从值类型接口转换来引用类型装箱。从引用类型转换成值类型拆箱。

 

16.怎么是受管制(托管)的代码?

答:

       托管代码是运营.NET 公共语言运营时CL大切诺基的代码

unsafe:非托管代码。不通过CL途胜运转。程序员自行分配和刑释内部存储器空间

 

17.如何是强命名程序集?

答:程序集要求通过加密签名,强命名程序集能够安插到全局程序集缓存中,成为公共程序集

 

18.net中读写数据库需求运用那些类?他们的功用?

答:DataSet:数据集。

    DataCommand:执行语句发号施令。

DataAdapter:数据的汇集,用语填充。

Data里德r:数据只读器

 

19.ASP.net的身份验证格局有哪些?分别是哪些规律?

答:

  Windwos(默认)用IIS控制

From(窗体)用帐户

Passport(密钥)

 

20.什么是Code-Behind技术?

答:代码前置。

 

21.在.net中,配件的意思是?

答:程序集。(中间语言,源数据,财富,装配清单)

 

22.常用的调用WebService的不二法门有何样?

答:1.利用WSDL.exe命令行工具。

    2.运用VS.NET中的Add Web Reference菜单选项

 

23..net Remoting 的做事原理是什么样?

答:服务器端向客户端发送3个进度编号,一个程序域编号,以分明目的的岗位。

 

24.在C#中,string str = null 与 string str =
“” 请尽量采纳文字或图象表达个中的分别。

答:string str = null 是不给她分配内部存款和储蓄器空间,而string str =
“” 给它分配长度为空字符串的内部存款和储蓄器空间。

 

25.请详述在dotnet中类(class)与布局(struct)的异议?

答:class能够被实例化,属于引用类型,class能够完成接口和单继承其余类,还足以视作基类型,是分配在内部存储器的堆上的

struct属于值类型,不可能同日而语基类型,可是能够实现接口,是分配在内部存款和储蓄器的栈上的.

 

26.基于委托(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 );

 

27.解析以下代码,完毕添补

string strTmp = “abcdefg某某某”;

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

int j= strTmp.Length;

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

答:i=13,j=10

 

28.SQLSE汉兰达VE中华V服务器中,给定表 table1 中有五个字段 ID、LastUpdateDate,ID表示更新的事务号, LastUpdateDate表示更新时的服务器时间,请使用一句SQL语句获得最终更新的事务号

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

 

29.依照线程安全的相干文化,分析以下代码,当调用test方法时i>10时是还是不是会挑起死锁?并简要表达理由。

public void test(int i)

{

   lock(this)

 {

   if (i>10)

   {

     i–;

     test(i);

   }

 }

}

答:不会生出死锁,(但有一点int是按值传递的,所以每便变更的都只是二个副本,因而不会油然则生死锁。但假设把int换做四个object,那么死锁会爆发)

 

30.简要谈一下您对微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。

答:webservice主假若可使用HTTP,穿透防火墙。而Remoting能够行使TCP/IP,二进制传送提升成效。

 

31.企业须求开发二个接续System.Windows.Forms.ListView类的机件,供给达到以下的与众分歧效果:点击ListView各列列头时,能遵照点击列的每行值进行重排视图中的全体行 (排序的点子如DataGrid相似)。依照你的文化,请简要谈一下你的思绪

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

 

32.给定以下XML文件,完结算法流程图。

<FileSystem>

< DriverC >

<Dir DirName=”MSDOS622”>

<File FileName =” Command.com” ></File>

</Dir>

<File FileName =”MSDOS.SYS” ></File>

<File FileName =” IO.SYS” ></File>

</DriverC>

</FileSystem>

请画出遍历全数文件名(FileName)的流程图(请使用递归算法)。

答:

void FindFile( Directory d )

{

   FileOrFolders = d.GetFileOrFolders();

   foreach( FileOrFolder fof in FileOrFolders )

   {

     if( fof is File )

     You Found a file;

     else if ( fof is Directory )

     FindFile( fof );

    }

}

 

33.写出一条Sql语句:取出表A中第①1到第四0记录(SQLServer,以自行拉长的ID作为主键,注意:ID大概不是接连的。

答:解1:  select top 10 * from A where id not in (select top 30 id from
A)

    解2:  select top 10 * from A where id > (select max(id) from
(select top 30 id from A )as A)

 

34.面向对象的言语具有________性、_________性、________性

答:封装、继承、多态。

 

35.能用foreach遍历访问的指标急需贯彻 ________________接口或声称________________情势的档次。

答:IEnumerable 、 GetEnumerator。

 

36.GC是怎么? 为啥要有GC?

答:GC是废物收集器。程序员不用顾虑内存管理,因为垃圾收集器会自动举行保管。要请求垃圾收集,能够调用上面包车型地铁措施之一:

  System.gc()

  Runtime.getRuntime().gc()

 

37.String s = new String(“xyz”);创设了多少个String Object?

答:多少个目的,二个是“xyx”,三个是指向“xyx”的引用对象s。

 

38.abstract class和interface有怎样界别?

答:

宣示方法的留存而不去达成它的类被叫作抽象类(abstract
class),它用于要创建二个反映某个基本表现的类,并为该类评释方法,但不能够在此类中贯彻该类的图景。不能够成立abstract 类的实例。可是可以制造三个变量,其品种是2个抽象类,并让它指向具体子类的3个实例。无法有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的全数抽象方法提供达成,不然它们也是空虚类为。取而代之,在子类中落到实处该方法。知道其表现的其他类可以在类中完毕那几个方法。

接口(interface)是抽象类的变体。在接口中,全体办法都以空虚的。多继承性可透过兑现那样的接口而取得。接口中的全体办法都是空虚的,没有三个有程序体。接口只可以够定义static
final成员变量。接口的贯彻与子类相似,除了该完毕类不可能从接口定义中再而三行为。当类完结特殊接口时,它定义(即将程序体给予)全部那种接口的措施。然后,它能够在贯彻了该接口的类的别的对象上调用接口的法门。由于有抽象类,它同意利用接口名作为引用变量的门类。日常的动态联编将生效。引用能够变换来接口类型或从接口类型转换,instanceof 运算符能够用来决定某指标的类是或不是落实了接口。

 

39.运转八个线程是用run()依然start()?

答:运营3个线程是调用start()方法,使线程所代表的虚构处理机处于可运维境况,那象征它能够由JVM调度并实施。那并不表示线程就会即时运营。run()方法能够生出必须剥离的评释来终止叁个线程。

 

40.接口是或不是可继承接口? 抽象类是不是可达成(implements)接口? 抽象类是不是可连续实体类(concrete
class)?

答:接口能够持续接口。

抽象类能够兑现(implements)接口,抽象类是或不是可继承实体类,但前提是实体类必须有醒指标构造函数。

 

41.构造器(构造函数)Constructor是或不是可被override?

答:构造器Constructor无法被再三再四,由此不能够重写Overriding,但能够被重载Overloading。

 

42.是不是足以持续String类?

答:String类是密封类故不得以一而再。

 

43.try {}里有2个return语句,那么紧跟在那几个try后的finally
{}里的code会不会被实践,曾几何时被执行,在return前依然后?

答:会执行,在return前执行。

 

44.几个目的值相同(x.equals(y) == true),但却可有差别的hash
code,那句话对不对?

答:不对,有同一的hash code。

 

45.swtich是还是不是能成效在byte上,是还是不是能成效在long上,是还是不是能功效在String上?

答:switch(expr1)中,expr1是2个平头表明式。由此传递给 switch 和 case 语句的参数应该是 int、 short、 char 也许 byte。long,string 都不能够效能于swtich。

 

47.当三个线程进入三个指标的贰个synchronized方法后,此外线程是或不是可进入此指标的别的情势?

无法,一个对象的七个synchronized方法只好由贰个线程访问。

 

48.abstract的method是还是不是可同时是static,是或不是可同时是native,是还是不是可同时是synchronized?

答:都不能。

 

49.List, Set, Map是还是不是继续自Collection接口?

答:List,Set是Map不是

 

50.Set里的因素是无法重新的,那么用什么样办法来分别重复与否呢? 是用==依然equals()? 它们有什么不相同?

答:Set里的要素是不能够重新的,那么用iterator()方法来分别重复与否。equals()是判读五个Set是还是不是等于。

equals()和==方法决定引用值是不是针对同一对象equals()在类中被掩盖,为的是当三个分别的目的的剧情和体系相配的话,重临真值。

 

51.数组有没有length()这几个方式? String有没有length()这么些方法?

答:数组没有length()这么些主意,有length的属性。String没有length()那几个措施,有length属性。

 

52.sleep() 和 wait() 有何分别?

答:sleep()方法是使线程甘休一段时间的艺术。在sleep 时间间隔期满后,线程不自然马上复苏执行。那是因为在尤其时刻,此外线程大概正在运维而且从不被调度为放弃进行,除非(a)“醒来”的线程具有更高的事先级

(b)正在运转的线程因为别的原由此围堵。

wait()是线程交互时,如果线程对一个联机对象x 发出二个wait()调用,该线程会暂停实施,被调对象进入等待状态,直到被提示或等候时间到。

 

53.short s1 = 1; s1 = s1 + 1;有啥样错? short s1 = 1; s1 +=
1;有怎么样错?

答:short s1 = 1; s1 = s1 +
1;有错,s1是short型,s1+1是int型,不可能显式转化为short型。可修改为s1
=(short)(s1 + 1) 。short s1 = 1; s1 += 1正确。

 

54.谈谈final, finally, finalize的区别。

答:

final—修饰符(关键字)如若3个类被声称为final,意味着它不能够再派生出新的子类,不能够同日而语父类被三番五次。因而     1个类无法既被声称为 abstract的,又被声称为final的。将变量或艺术注解为final,能够确定保证它们在选拔中     不被转移。被声称为final的变量必须在证明时给定初值,而在后来的引用中只可以读取,不可修改。被声称为     final的办法也一如既往只可以利用,不能够重载

finally—再不行处理时提供 finally 块来施行别的清除操作。尽管抛出贰个丰裕,那么相匹配的 catch 子句就会     执行,然后决定就会进去 finally 块(倘诺有的话)。

finalize—方法名。Java 技术允许行使 finalize() 方法在垃圾堆收集器将指标从内部存款和储蓄器中排除出去此前做须求的清理     工作。那么些措施是由垃圾收集器在明确这一个指标没有被引用时对那个目的调用的。它是在 Object 类中定义的     ,由此有着的类都继承了它。子类覆盖 finalize() 方法以盘整系统能源大概实施其余清理工科作。finalize()      方法是在废品收集器删除对象从前对那个目的调用的。

 

55.怎样处理几100000条出现数据?

答:用存款和储蓄进度或作业。取得最大标识的时候还要更新..注意主键不是自增量方式那种格局并发的时候是不会有双重主键的..取得最大标识要有3个存款和储蓄进度来获取.

 

56.Session有何样主要BUG,微软提出了怎么着方法加以化解?

答:是iis中出于有经过回收机制,系统繁忙的话Session会丢掉,能够用Sate   server或SQL   Server数据库的不二法门存款和储蓄Session不过那种措施相比较慢,而且无法捕获Session的END事件。

 

57.历程和线程的区分?

答:进度是系统开始展览能源分配和调度的单位;线程是CPU调度和分担的单位,2个进度能够有多少个线程,那个线程共享这一个进度的财富。

 

58.堆和栈的差异?

答:

    栈:由编写翻译器自动分配、释放。在函数体中定义的变量常常在栈上。

    堆:一般由程序员分配释放。用new、malloc等分配内部存储器函数分配得到的正是在堆上。

 

59.成员变量和成员函数前加static的意义?

答:它们被誉为常成员变量和常成员函数,又称作类成员变量和类成员函数。分别用来反映类的气象。比如类成员变量能够用来总计类实例的多寡,类成员函数负责那种计算的动作。

 

60.ASP。NET与ASP比较,首要有怎么着发展?

答:asp解释形,aspx编写翻译型,质量进步,有利于敬重源码。

 

61.生出1个int数组,长度为100,并向里面私自插入1-100,并且不能够重复。

int[] intArr=new int[100];

ArrayList myList=new ArrayList();

Random rnd=new Random();

while(myList.Count<100)

{

 int num=rnd.Next(1,101);

 if(!myList.Contains(num))

 myList.Add(num);

}

  for(int i=0;i<100;i++)

   intArr[i]=(int)myList[i];

 

62.请表达在.net中常用的三种页面间传递参数的法门,并说出他们的得失。

答:session(viewstate) 简单,但易丢失

    application        全局

    cookie             不难,但恐怕不帮忙,大概被仿制假冒

    input ttype=”hidden”     简单,大概被伪造

    url参数                  不难,展现于地址栏,长度有限

    数据库                   稳定,安全,但质量绝对弱

 

63.请指出GAC的含义?

答:全局程序集缓存。

 

64.向服务器发送请求有三种方法?

答:get,post。get一般为链接格局,post一般为按钮形式。

 

65.DataReader与Dataset有如何界别?

答:三个是不得不前进的只读游标,一个是内部存款和储蓄器中的表。

 

66.软件开发进度一般有多少个等级?每一个阶段的功用?

答:可行性分析(风险控制),要求分析,架构设计,代码编写,测试,布署,维护

 

67.在c#中using和new这三个第1字有哪些意思,请写出您所精晓的含义?using 指令 和语句 new 创造实例 new 隐藏基类中艺术。

答:using 引入名称空间依旧应用非托管财富,使用完对象后活动执行得以实现了IDisposable接口的类的Dispose方法

    new 新建实例大概隐藏父类方法

 

68.内需贯彻对一个字符串的拍卖,首先将该字符串首尾的空格去掉,假使字符串中间还有接二连三空格的话,仅保留三个空格,即允许字符串中间有八个空格,但总是的空格数不可当先1个.

答:string inputStr=” xx   xx  “;

inputStr=Regex.Replace(inputStr.Trim(),” *”,” “);

 

69.底下那段代码输出什么?为何?

int i=5;

int j=5;

if (Object.ReferenceEquals(i,j))

Console.WriteLine(“Equal”);

else

Console.WriteLine(“Not Equal”);

答:不对等,因为相比较的是目标

 

70.什么样叫做SQL注入,怎么着幸免?请举例表达。

答:利用sql关键字对网站开始展览攻击。过滤关键字’等

 

71.怎么样是反射?

答:动态获取程序集新闻

 

72.用Singleton怎么着写设计方式

答:static属性里面new ,构造函数private

 

73.什么是Application Pool?

答:Web应用,类似Thread Pool,进步并发品质。

 

74.什么样是虚函数?什么是思梅止渴函数?

答:虚函数:没有完毕的,可由子类继承同仁一视写的函数。抽象函数:规定其非虚子类必须贯彻的函数,必须被重写。

 

75.什么是XML?

答:XML即可扩大标记语言。eXtensible 马克up
Language.标记是指计算机所能精通的音信符号,通过此种标记,总括机之间能够处理包罗各类音讯的小说等。如何定义那几个标记,即能够接纳国际通用的标志语言,比如HTML,也能够应用象XML那样由有关职员任意支配的符号语言,那就是言语的可扩展性。XML是从S青霉素L中简化修改出来的。它根本金和利息用的有XML、XSL和XPath等。

 

76.什么是Web Service?UDDI?

答:Web
瑟维斯正是根据互连网的、分布式的模块化组件,它实施一定的天职,遵从具体的技艺术专科学校业,那么些专业使得Web
Service能与别的包容的机件进行互操作。

   UDDI 的指标是为电子商务建立专业;UDDI是一套基于Web的、分布式的、为Web
瑟维斯提供的、音信登记中央的兑现标准规范,同时也蕴藏一组使公司能将笔者提供的Web
Service注册,以使其他集团能够发现的造访协议的落实正式。

 

77.哪些是ASP.net中的用户控件?

答:用户控件一般用在内容多为静态,只怕不难会改变的状态下..用的可比大..类似ASP中的include..可是职能要强有力的多。

 

78.列举一下您所了然的XML技术及其使用

答:xml用于配置,用于保存静态数据类型.接触XML最多的是web
Services..和config,存储经常利用然则不平日修改的数量

 

79.ADO.net中常用的指标有如何?分别讲述一下。

答:Connection 数据库连接对象

    Command 数据库命令

    DataReader 数据读取器

DataSet 数据集

DataAdaprer数据适配器

 

80.什么是code-Behind技术。

答:ASPX,RESX和CS八个后缀的公文,这些就是代码分离.达成了HTML代码和服务器代码分离.方便代码编写和整理.

 

81.哪些是SOAP,有怎样应用。

答:simple object access
protocal,简单对象接受协议.以xml为大旨编码结构,建立在已有通讯协议上(如http,但是据称ms在搞最底部的架构在tcp/ip上的soap)的一种标准Web
Service使用的协议..

 

82.C#中 property 与 attribute的分别,他们各有哪些用处,那种机制的补益在哪个地方?

答:叁个是性质,用于存取类的字段,二个是特点,用来标识类,方法等的增大属性

 

83.XML 与 HTML 的首要性差距

答:1. XML是分别轻重缓急写字母的,HTML不区分。

    2. 在HTML中,假如上下文清楚地显示出段落也许列表键在哪个地方结尾,那么您能够简简单单</p>或许</li>之类的终止       标记。在XML中,相对不可能省略掉截止标记。

    3. 在XML中,拥有单个标记而从不匹配的终结标记的成分必须用一个 / 字符作为末了。那样分析器就精通毫无       查找停止标记了。

    4. 在XML中,属性值必须分装在引号中。在HTML中,引号是可用可不用的。

    5. 在HTML中,能够具备不带值的属性名。在XML中,全数的质量都必须带有相应的值。

 

84.c#中的长富运算符是?

答:?:。

 

85.当整数a赋值给2个object对象时,整数a将会被?

答:装箱。

 

86.类成员有_____种可访问方式?

答:this.;new Class().Method;

 

87.public static const int A=1;那段代码有错误么?是哪些?

答:const不能用static修饰。

 

88.float f=-123.567F; int i=(int)f;i的值以往是_____?

答:-123。

 

89.委托表明的首要字是______?

答:delegate.

 

90.用sealed修饰的类有啥特色?

答:密封,不能够持续。

 

91.在Asp.net中装有的自定义用户控件都必须继承自________?

答:Control。

 

92.在.Net中兼有可种类化的类都被标记为_____?

答:[serializable]

 

93.在.Net托管代码中大家绝不担心内部存款和储蓄器漏洞,那是因为有了______?

答:GC。

 

94.上边包车型大巴代码中有啥错误啊?_______

     using System;

     class A

     {

          public virtual void F(){

              Console.WriteLine(“A.F”);

           }

      }

      abstract class B:A

       {

           public abstract override void F();  答:abstract
override 是无法同步修饰.

       }                                           // new public
abstract void F();

 

95.当类T只表明了个体实例构造函数时,则在T的次第文件外部,___可以___(能够 or 不能)从T派生出新的类,不得以____(能够 or 不得以)直接创设T的其余实例。

答:不可以,不可以。

 

96.底下那段代码有错误么?

    switch (i){

    case():        答://case()条件不能够为空

        CaseZero();

        break;

    case 1:

        CaseOne();

        break;

    case 2:

        dufault;   答://wrong,格式不正确

        CaseTwo();

        break;

   }

 

97.在.Net中,类System.Web.UI.Page 能够被继承么?

答:可以。

 

98..net的错误处理机制是如何?

答:.net错误处理机制选取try->catch->finally结构,爆发错误时,层层上抛,直到找到匹配的Catch甘休。

 

99.使用operator表明且仅宣称了==,有怎么着错误么?

答:要同时修改Equale和GetHash() ? 重载了”==” 就亟须重载 “!=”

 

100.在.net(C# or
vb.net)中什么用户自定义音信,并在窗体中拍卖这么些音信。

答:在form中重载DefWndProc函数来处理信息:

protected override void DefWndProc ( ref System.WinForms.Message m )

{

  switch(m.msg)

  {

    case WM_Lbutton :

   ///string与MFC中的CString的Format函数的使用办法有所分裂

   string message =
string.Format(“收到新闻!参数为:{0},{1}”,m.wParam,m.lParam);

   MessageBox.Show(message);///呈现一个音讯框

   break;

    case USER:

    处理的代码

    default:

   base.DefWndProc(ref m);///调用基类函数处理非自定义务消防队息。

   break;

  }

}

 

101.在.net(C# or vb.net)中哪些撤消二个窗体的倒闭。

答:private void Form1_Closing(object sender,
System.ComponentModel.CancelEventArgs e)

   {

      e.Cancel=true;

   }

 

102.在.net(C# or
vb.net)中,Appplication.Exit 依旧 Form.Close有哪些两样?(winform标题非asp.net标题)

答:一个是脱离整个应用程序,二个是关门内部三个form。

 

103.在C#中有贰个double型的变量,比如10321.5,比如122235401.21644,作为货币的值怎么按梯次分化国度的习惯来输出。比如U.S.用$10,321.50和$122,235,401.22而在英帝国则为£10  321.50和£122  235  401.22

答:System.Globalization.CultureInfo MyCulture = new
System.Globalization.CultureInfo(“en-US”);

    //System.Globalization.CultureInfo MyCulture = new
System.Globalization.CultureInfo(“en-GB”);为英    国  货币类型

    decimal y = 9999999999999999999999999999m;

    string str = String.Format(MyCulture,”My amount = {0:c}”,y);

 

104.某一密码仅使用K、L、M、N、O共多少个假名,密码中的单词从左向右排列,密码单词必须比照如下规则:

(1)       密码单词的微小长度是多个字母,能够一如既往,也足以不相同

(2)       K不容许是单词的第1个字母

(3)       即使L出现,则产出次数不止一遍

(4)       M不能使末段三个也不可能是尾数第二个假名

(5)       K出现,则N就必然出现

(6)       O若是是终极七个假名,则L一定现身

难点一:下列哪3个字母可以放在LO中的O前边,形成2个1个字母的密码单词?

  A) K   B)L   C) M    D) N

答案:B

 

标题二:借使能获取的假名是K、L、M,那么能够形成的八个字母长的密码单词的总额是多少?

  A)1个  B)3个  C)6个  D)9个

答案:A

 

标题三:下列哪一个是单词密码?

  A) KLLN   B) LOML   C) MLLO   D)NMKO

答案:C

 

8.
62-63=1 等式不树立,请移动一个数字(不得以移动减号和等于号),使得等式成立,怎么着运动?

答案:62移动成2的6次方

 

105.对于如此的一个枚举类型:

enum Color:byte

{

  Red,

  Green,

  Blue,

  Orange

}

答:string[] ss=Enum.GetNames(typeof(Color));

    byte[] bb=Enum.GetValues(typeof(Color));

 

106.
C#中 property 与 attribute的区分,他们各有如何用处,那种机制的补益在何地?

答:attribute:自定义属性的基类;property :类中的属性

 

107.C#是还是不是对内部存款和储蓄器实行间接的操作?

答:在.net下,.net引用了垃圾堆回收(GC)功效,它代替了程序员  可是在C#中,不能够直接促成Finalize方法,而是在析构函数中调用基类的Finalize()方法

 

108.ADO。NET相对于ADO等要害有如何立异?

答:1:ado.net不借助于于ole
db提供程序,而是使用.net托管提供的次序,2:不使用com3:不在协助动态游标和服务器端游 4:,能够断开connection而保留当前数据集可用 5:强类型转换6:xml辅助

 

109.写多少个HTML页面,达成以下职能,左键点击页面时突显“您好”,右键点击时显得“禁止右键”。并在2分钟后自行关闭页面。

答:<script language=javascript>

 setTimeout(‘window.close();’,3000);

 function show()

 {

  if (window.event.button == 1)

  {

   alert(“左”);

  }

  else if (window.event.button == 2)

  {

   alert(“右”);

  }

 }

</script>

 

110.大致讲述一下ASP。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(VS二〇〇七)和您从前使用的开发工具(.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.重载与覆盖的差别?

答:一 、方法的遮盖是子类和父类之间的涉嫌,是垂直关系;方法的重载是同二个类中方法之间的关联,是程度关系

    ② 、覆盖只可以由一个主意,或只好由一些艺术发生关系;方法的重载是三个情势之间的关联。

    叁 、覆盖须求参数列表相同;重载须求参数列表分化。

    肆 、覆盖关系中,调用那个方法体,是依照目的的门类(对象对应存款和储蓄空间类型)来决定;重载关系,是基于调       用时的实参表与形参表来选取方法体的。

 

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.SQLSE翼虎VE奥迪Q5服务器中,给定表 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中,假如有别的可能引发那3个的操作,也应当用try,catch。所以理论上毫不全数尤其都会被捕捉。)

 

126.小卖部供给支付三个后续System.Windows.Forms.ListView类的零部件,须要达到以下的特种意义:点击ListView各列列头时,能根据点击列的每行值进行重排视图中的全部行 (排序的章程如DataGrid相似)。依据你的学识,请简要谈一下您的笔触:

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

 

127.什么样是WSE?近期新型的本子是有个别?

答:WSE (Web ServiceExtension) 包来提供新型的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(){

               Console.WriteLine(“x={0},y={1}”,x,y);

           }

当使用new B()成立B的实例时,发生哪些输出?

答:X=1,Y=0

 

129.下边包车型客车例证中

 

     using System;

     class A

     {

          public static int X;

          static A(){

               X=B.Y+1;

          }

      }

      class B

      {

           public static int Y=A.X+1;

           static B(){}

           static void Main(){

                Console.WriteLine(“X={0},Y={1}”,A.X,B.Y);

           }

       }

发生的输出结果是怎么?

答:x=1,y=2

 

130.abstract class和interface有啥不相同?

答:注解方法的存在而不去落到实处它的类被称作抽象类(abstract
class),它用来要创设八个浮现有些基本行为的类,并为该类注解方法,但不能够在此类中落到实处该类的状态。不可能创造abstract 类的实例。不过能够成立三个变量,其连串是二个抽象类,并让它指向具体子类的一个实例。不可能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的全体抽象方法提供实现,不然它们也是空泛类为。取而代之,在子类中落实该办法。知道其行为的其余类能够在类中贯彻那些格局。

接口(interface)是抽象类的变体。在接口中,全部办法都以架空的。多继承性可透过兑现如此的接口而赢得。接口中的全部办法都以空泛的,没有二个有程序体。接口只可以够定义static
final成员变量。接口的兑现与子类相似,除了该完毕类不可能从接口定义中延续行为。当类达成特殊接口时,它定义(即将程序体给予)全体这种接口的点子。然后,它能够在贯彻了该接口的类的其余对象上调用接口的法门。由于有抽象类,它同意行使接口名作为引用变量的品种。通常的动态联编将生效。引用能够转换成接口类型或从接口类型转换,instanceof 运算符可以用来控制某目的的类是还是不是实现了接口。

 

这些是C#,ASP.NET,数据库面试题,全体从网上搜集而来,经整治而发布,希望给大家带来扶助,有荒唐的地方还请各位高手建议,在下聆听指教。

 

 

以下是08年二月新增面试题

1. asp.net中web应用程序获取数据的流程:

A.Web Page B.Fill  C.Sql05  D.Data
Sourse  E.DataGrid  F.DataSet  G.Select and Connect

 

Commands  H.Sql Data Adapter

 

答案:a,e,d,f,h,g,b,c

 

2. Asp.net执行方式中各组件填入到相应地方:

A.Output Cache  B.Parser  C.Assembly Cache  D.IE  E.Memory  F.Compiler

WebPage被第2回呼吁时:

D->__->__->__->__->D

WebPage被第1遍呼吁时:

D->__->__->D

WebPage的页面输出缓存被打开时:

D->__->D

 

答案:

WebPage被第①次呼吁时:

D->_b_->_f_->_a_->_e_->D

WebPage被第贰遍呼吁时:

D->_b_->_e_->D

WebPage的页面输出缓存被打开时:

D->_a_->D

 

3.七个数组  [n]
[m]  n>m  第①个数组的数字无序排列 第叁个数组为空 取出第三个数组的纤维值 放到第二个数组中率先个岗位, 依次类推. 不可能改变A数组,不可能对之进行排序,也不得以倒到其余数组中。

  int[] a = { -20, 9, 7, 37, 38, 69, 89, -1, 59, 29, 0, -25, 39,
900, 22, 13, 55 };

            int[] b = new int[10];

            int intTmp = a[0], intMaxNum;

            for (int i = 0; i < a.Length; i++)

            {

                intTmp = a[i] > intTmp ? a[i] : intTmp;

            }

            intMaxNum = intTmp;

            for (int j = 0; j < b.Length; j++)

            {

 

                for (int i = 0; i < a.Length; i++)

                {

                    if (j == 0)

                        intTmp = a[i] < intTmp ? a[i] : intTmp;

                    else

                    {

                        if (a[i] > b[j – 1])

                            intTmp = a[i] < intTmp ? a[i] :
intTmp;

                    }

                }

                b[j] = intTmp;

                intTmp = intMaxNum;

            }

            foreach (int bb in b)

            {

                Console.WriteLine(bb);

 

            }

            Console.ReadLine();

 

4.请将字符串”I am a student”按单词逆序输出 如”student a am I”

string S = “I am a student”;

            char[] C = new char[] { ‘ ‘};

            string[] n =S.Split(C);

            int length = S.Length;

            for (int i =length-1 ; i >=0; i–)

            {

                Console.Write(n[i]);

                if (i != 0)

                {

                    Console.Write(” “);

                }

            }

相关文章

网站地图xml地图