.net面试宝典

1.类与结构的区别。
Class可以被实例化,属于引用类型,是分配在内存的堆上的,Struct属于值类型,是分配在内存的栈上的.
  1)、结构是值类型;
  2)、结构不支持继承;
  3)、结构不能定义默认的构造函数;
  4)、结构不能定义析构函数;

  5)、结构不能使用初始值设置域值。


2.在C#中,string   str   =   null   与   string   str   =   “”   请尽量使用文字或图象说明其中的区别。   
    string   str   =   null   是不给他分配内存空间,而string   str   =   “”给它分配长度为空字符窜的内存空间.   


3. 解释转发与跳转的区别?

  • 内部跳转的时候实际上是通过服务器端将请求转发到另外的页面或者servlet中,这个时候跳转到的目标页面或者servlet可以获取到请求对象,也可以获取到请求中的属性和参数。而外部跳转的时候实际上是第一次请求后,服务器端向客户端发送了一个指令,让客户端再次请求了一次服务器端,这个时候服务器第二次拿到的request对象已经不是第一次请求的request对象了,所以无法获取到第一次请求里的参数和属性。
  • 内部跳转的url地址栏不会发生变化,外部跳转url则会发生变化。 
  • 内部跳转无法跳转到工程以外的jsp或者servlet,外部跳转则可以。 
  • 内部跳转实现的方法: request.getRequestDispatcher("XXX.jsp或者servlet").forward(request, response),
  • 外部跳转实现的方法: response.sendRedirect("XXX.jsp或者servlet")


4.const与readonly的区别

  1. const 关键字用于修改字段或局部变量的声明。它指定字段或局部变量的值不能被修改。
  2. const数据成员的声明式必须包含初值,且初值必须是一个常量表达式。因为它是在编译时就需要完全评估。
  3. const成员可以使用另一个const成员来初始化,前提是两者之间没有循环依赖。
  4. readonly在运行期评估赋值,使我们得以在确保“只读访问”的前提下,把object的初始化动作推迟到运行期进行。
  5. readonly 关键字与 const 关键字不同:const 字段只能在该字段的声明中初始化。readonly 字段可以在声明或构造函数中     初始化。因此,根据所使用的构造函数, readonly 字段可能具有不同的值。另外,const 字段是编译时常数,而 readonly字段可用于运行时常数。 
  6. readonly 只能在声明时或者构造函数里面初始化,并且不能在 static 修饰的构造函数里面。

5.DataReader和DataSet的异同

DataReader和DataSet最大的区别在于,DataReader使用时始终占用SqlConnection,在线操作数据库..任何对SqlConnection的操作都会引发DataReader的异常..因为DataReader每次只在内存中加载一条数据,所以占用的内存是很小的..因为DataReader的特殊性和高性能.所以DataReader是只进的..你读了第一条后就不能再去读取第一条了..

DataSet则是将数据一次性加载在内存中.抛弃数据库连接..读取完毕即放弃数据库连接..因为DataSet将数据全部加载在内存中.所以比较消耗内存...但是确比DataReader要灵活..可以动态的添加行,列,数据.对数据库进行回传更新操作...


6.C#中的接口和类有什么异同。
答:接口是负责功能的定义,项目中通过接口来规范类,操作类以及抽象类的概念! 
而类是负责功能的具体实现! 
在类中也有抽象类的定义,抽象类与接口的区别在于: 
抽象类是一个不完全的类,类里面有抽象的方法,属性,也可以有具体的方法和属性,需要进一步的专业化。 
但接口是一个行为的规范,里面的所有东西都是抽象的! 
一个类只可以继承一个基类也就是父类,但可以实现多个接口


7.请解释进程与线程的区别?进程与程序的区别?

一般,一个应用程序对应于一个或多个进程,可以把进程看作是该应用程序在*作系统中的标识;而一个进程通常由多个线程组成,而线程是*作系统为该应用程序分配处理时间的最小单元。


  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C#面试前必看书籍,取材于各大IT公司的历年面试题252个(包括研发类笔试及口试题目、情商及智商类题目),详细分析了应聘C#与.NET程序员职位的常见考点。主要内容包括:面试流程、基础语法和技术框架、数据访问及XML应用、高级特性及应用进阶、测试及质量保证、跨国公司经面试题等。 目前许多程序员对C#语言的基础知识掌握不牢,很难通过求职面试。在激烈的求职竞争中,想在几、轮笔试、面试的激烈竞争中拔得头筹,漂亮地完成试卷,躲过面试官布下的种种“陷阱”,是一件非常不容易的事情。要知道研发类考题过关仅仅是基础,情商、智商更为关键,面试是考验人的综合应变能力和逻辑能力的过程。本书记就是为了让读者对企业招聘程序员时需要掌握的知识有一个系统、全面的认识,并进行充分的准备,以期能够成功通过面试。 部分目录: 第1篇 赢在面试 第1章 成功应聘开发职位的秘籍 第2篇 基础语法及技术框架 第2章NET概述 第3章 程序设计基础 第4章 面向对象程序设计 第5章 ASPNET应用开发 第3篇 数据访问及XML应用 第6章 数据访问 第7章 Web Service的开发与应用 第8章 WPF应用开发 第4篇 高级特性及应用进阶 第9章 高级特性 第10章 高级编程 第11章 ASPNET高级进阶 第12章 算法设计与分析 第5篇 测试及质量保证 第13章 测试 第6篇 跨国公司经面试题 第14章 情商类面试题 第15章 智商类面试

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值