课程咨询 :025-84812726

南京.NET培训 > 达内新闻 > .NET面试题20问~所有的方向都可以看看
  • .NET面试题20问~所有的方向都可以看看

    发布:.NET      来源:.NET      

  • 一名入门的asp.net程序员应该掌握的知识:
    1)熟练使用Sql Server中企业管理器、查询分析器和事件探查器,能熟练编写T-SQL、存储过程、用户自定义函数、视图、触发器; 
    2)了解ASP.net服务器控件的生命周期;
    3)熟练掌握HTML,CSS,javascriptxmlWeb ServiceAJAX
    4)掌握多层结构以及类的设计方法;
    5)了解网站安全漏洞相关方面以及优化技巧;

    1、可以使用抽象函数重写基类中的虚函数吗? 
    答:可以,需使用new修饰符显式声明,表示隐藏了基类中该函数的实现。

    C#复制代码

    1. class BaseClass

    2. {

    3. public virtual void A()

    4. {

    5. HttpContext.Current.Response.Write("阿会楠");

    6. }

    7. }

    8.

    9. abstract class dClass : BaseClass

    10. {

    11. public new abstract void A();

    12. }


    2、接口可以包含哪些成员? 
    答:接口可以包含属性、方法、索引指示器和事件,但不能包含常量、域、操作符、构造函数和析构函 
    数,而且也不能包含任何静态成员。 

    3、如何把一个array复制到arrayList里。

    C#复制代码

    1. string[] arrA = new string[]{"","",""};

    2. ArrayList arrB = new ArrayList();

    3. foreach(string a in arrA)

    4. {

    5. arrB.Add(a);

    6. }

    7. foreach (string b in arrB)

    8. {

    9. Response.Write(b);

    10. }

    4、概述三层结构体系。
    答:主要包括界面层,业务逻辑层,数据访问层。

    5StringBuilderString的区别。 
    答:使用String类,在赋值时会产生一个新的对象,而StringBuilder不会,所以在大量字符串拼接或频 
    繁对某一字符串进行操作时最好使用StringBuilder

    6、什么是虚函数?什么是抽象函数? 
    答: 
    虚函数:没有实现的,可以由子类继承并重写的函数。 
    抽象函数:规定其非虚子类必须实现的函数,必须被重写。

    7、什么是Web Service? 
    答:Web Service是基于网络的、分布式的模块化组件,它执行特定的任务,遵守具体的技术规范,这些 
    规范使得Web Service能与其他兼容的组件进行互操作。

    8ADO.net常用对象有哪些? 
    答: 
    Connection
    :数据库连接对象 
    Command
    :数据库命令 
    DataReader
    :数据阅读器 
    DataSet
    :数据集

    9、委托声明的关键字是?
    答:delegate

    10、在ASP.net中所有的自定义用户控件都必须继承自?
    答:Control

    11、在.net托管代码总我们不必担心内存泄漏,这是因为有了?
    答:GC 垃圾收集器。

    12&&&的区别?
    答:&是位运算符,表示按位运算;&&是逻辑运算符,表示逻辑与。

    13、覆盖与重载的区别?
    答:
    覆盖:采用override声明,参数列表必须相同。
    重载:不需要特别声明,只要参数列表不同(个数不同或类型不同)。

    14ASP.NET页面传值的几种方式?
    答:
    1
    、使用Request.QueryStringRequest.Form
    2
    、使用SessionCookies,Application
    3
    、使用Server.Transfer
    4
    、使用PostBackUrl传递。具体例子:http://www.sosuo8.com/article/show.asp?id=2026&page=1

    15、什么叫装箱和拆箱? 
    答:从值类型转换到引用类型叫装箱,反之称为拆箱。 

    16、接口是否可以继承接口? 
    答:可以。 

    17、是否可以继承String类。 
    答:String类是final类故不可以继承。

    18、简述privateprotectedpublicinternal修饰符的访问权限。 
    答: 
    private:
    私有的,类内部。 
    protected
    :受保护的,类内部和继承类中可以访问。 
    public
    :无限制 
    internal:
    在同一命名空间内可以访问 

    19、下面这段代码输出什么?为什么?

    int i=5; 
    int j=5; 
    if (Object.ReferenceEquals(i,j)) 
    Console.WriteLine("Equal"); 
    else 
    Console.WriteLine("Not Equal");

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

    20、什么是ASP.NET中的用户控件。 
    答:ASP.NET中用户控件很关键一点是要区别于自定义控件。用户控件说白了其实就像是asp中的 
    include
    ,只是功能更加强大。用户控件易于创建但易用性差,自定义控件难创建,但易用性好。 

    21、什么是强类型系统? 
    答:RTTI:类型识别系统 

    22、写出一条Sql语句:取出表A中第31到第40记录(SQLServer,以自动增长的ID作为主键,注意:ID可能不是连续的。 
    答:select top 10 * from [A] where ID not in (select top 30 from A) 

    23、谈谈finalfinally的区别。 
    答: 
    final
    :不能作为父类被继承。一个类不能声明是final,又声明为abstract 
    finally
    :用于try{}catch{}finally{}结构,用于异常处理时执行任何清除操作。 

    24ASP.NETASP相比,有哪些进步。 
    答: 
    ASP.NET
    编译型,面向对象编程语言,代码与界面分离。 
    ASP
    解释型,脚本语言。

    想想还是要认真复习下相关的知识点,在网上找了些经常出的题目

    1. 简述 private protected public internal 修饰符的访问权限。 
     . private : 私有成员在类的内部才可以访问。 
    protected : 
    保护成员,该类内部和继承类中可以访问。 
    public : 
    公共成员,完全公开,没有访问限制。 
    internal: 
    在同一命名空间内可以访问。

    2 .列举ASP.NET 页面之间传递值的几种方式。 
    . 1.使用QueryString, ....?id=1; response. Redirect().... 
    2.
    使用Session变量 
    3.
    使用Server.Transfer

    3. 一列数的规则如下: 112358132134...... 求第30位数是多少, 用递归算法实现。 
    答: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#中的委托是什么?事件是不是一种委托? 
    答 : 
    委托可以把一个方法作为参数代入另一个方法。 
    委托可以理解为指向一个函数的引用。 
    是,是一种特殊的委托

    5.override与重载的区别 
    答 : 
    override 
    与重载的区别。重载是方法的名称相同。参数或参数类型不同,进行多次重载以适应不同的需要 
    Override 
    是进行基类中函数的重写。为了适应需要。

    6.如果在一个B/S结构的系统中需要传递变量值,但是又不能使用SessionCookieApplication,您有几种方法进行处理? 
    答 : 
    this.Server.Transfer

    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#中索引器的实现过程,是否只能根据数字进行索引? 
    答:不是。可以用任意类型。

    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..netB/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层? 
    答:一般为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.CTSCLSCLR分别作何解释? 
    答:CTS:通用语言系统。CLS:通用语言规范。CLR:公共语言运行库。

    15.什么是装箱和拆箱? 
    答:从值类型接口转换到引用类型装箱。从引用类型转换到值类型拆箱。

    16.什么是受管制的代码? 
    答:unsafe:非托管代码。不经过CLR运行。

    17.什么是强类型系统? 
    答:RTTI:类型识别系统。

    18.net中读写数据库需要用到那些类?他们的作用? 
    答:DataSet:数据存储器。 
    DataCommand:
    执行语句命令。 
    DataAdapter:
    数据的集合,用语填充。

    19.ASP.net的身份验证方式有哪些?分别是什么原理? 
    答:10Windwos(默认)IIS...From(窗体)用帐户....Passport(密钥)

    20.什么是Code-Behind技术? 
    答:代码后植。

    推荐文章

上一篇:NET全国就业认证考试来了~~

下一篇:.NET出现频率非常高的笔试题 复习一下

最新开班日期  |  更多

.NET工程师--全日制班

.NET工程师--全日制班

开班日期:04-28

.NET—零基础周末班

.NET—零基础周末班

开班日期:04-28

.NET—零基础全日制

.NET—零基础全日制

开班日期:04-28

.NET工程师--周末班

.NET工程师--周末班

开班日期:04-28

  • 地址:南京市龙蟠中路30号东来商务中心A座5楼
  • 课程培训电话:025-84812726     全国服务监督电话:400-111-8989
  • 服务邮箱 tousu@tedu.cn
  • 2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56