




已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
/content/10/0716/16/2232000_39451698.shtml1. CLR、CTS、CLS 分别是什么意思? CLR 是公共语言运行库(common language runtime)CTS是通用类型系统(Common Type System)CLS是公共语言规范(Common Language Specification) 2. 什么是基元类型? 由编译器直接支持的数据类型称为基元类型。比如:byte3、简要谈一下您对微软.NET构架下remoting和webservice两项技术的理解以及实际中的应用。 remoting是.net中用来跨越machine, process, appdomain(应用程序域)进行方法调用的技术,对于三层结构的程序,就可以使用remoting技术来构建它是分布应用的基础技术.相当于以前的DCOM Web Service是一种构建应用程序的普通模型,并能在所有支持internet网通讯的操作系统上实施。 Web Service令基于组件的开发和web的结合达到最佳,基于组件的对象模型; 4 .如何把一个array复制到arrayList里foreach(object o in array )arrayList.Add(o);5 WEB控件可以激发服务端事件,请谈谈服务端事件是怎么发生并解释其原理?自动传回是什么?为什么要使用自动传回。 在web控件发生事件时,客户端采用提交的形式将数据交回服务端,服务端先调用Page_Load事件,然后根据传回的状态信息自动调用服务端事件。自动传回:是当我们在点击客户端控件时,采用提交表单的形式将数据直接传回到服务端,只有通过自动传回才能实现服务端事件的机制。如果没有自动回传机制就只能调用客户端事件,而不能调用服务端事件。6 WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用?可以调用例如: 7 请解释ASP.NET中的web页面与其隐藏类之间的关系? 一个ASP.NET页面一般都对应一个隐藏类,一般都在ASP.NET页面的声明中指定了隐藏类。例如一个页面Tst1.aspx的页面声明如下Codebehind=Tst1.aspx.cs 表明经编译此页面时使用哪一个代码文件Inherits=T1.Tst1 表用运行时使用哪一个隐藏类8 什么是viewstate,能否禁用?是否所有控件都可以禁用? Viewstate是保存状态的一种机制,用来存储页面范围内的数据,以保证用户在离开页面之前数据的持续性,实现上来说,ViewState被保存在页面内的一个隐藏控件内,并且提交到服务器后被提取后使用,EnableViewState属性设置为false即可禁用:9 当发现不能读取页面上的输入的数据时很有可能是什么原因造成的?怎么解决 很有可能是在Page_Load中数据处理时 没有进行Page的IsPostBack属性判断。10 请解释什么是上下文对象,在什么情况下要使用上下文对象 上下文对象是指HttpContext类的Current 属性,当我们在一个普通类中要访问内置对象 (Response,Request,Session,Server,Appliction等)时就要以使用此对象。11 请解释转发与跳转的区别? 转发就是服务端的跳转A页面提交数据到B页面,B页面进行处理然后从服务端跳转到其它页面跳转就是指客户端的跳转; 超链接跳转:通过地址栏传递字符串,丢失前面的请求,无法动态改变请求的地址; 地址栏改变。 HyperLink1.NavigateUrl=“a.aspx?name=+TextBox1.Text; 浏览器重定向:通过地址栏传递字符串;丢失前面的请求;服务器得到的将是新的请求;地址栏改变;两次往返;只能传string,255个字符,Response.Redirect (“a.aspx?name=”+a); 服务器转发:将新页面的输出覆盖到原页面上;不会丢失原始请求;地址栏没有变。Server.Transfer(a.aspx); 服务器执行:将新页面的输出附加到原页面上;不会丢失原始请求 ;地址栏没有变。Server.Execute(a.aspx);12.请简述一下用Socket进行同步通讯编程的详细步骤 1、在应用程序和远程设备中使用协议和网络地址初始化套接字 2、在应用程序中通过指定端口和地址建立监听 3、远程设备发出连接请求 4、应用程序接受连接产生通信scoket 5、应用程序和远程设备开始通讯(在通讯中应用程序将挂起直到通讯结束) 6、通讯结束,关闭应用程序和远程设备的Socket回收资源13 请解释web.config文件中的重要节点 appSettings包含自定义应用程序设置。 system.web 系统配置。 compilation动态调试编译设置。 authentication身份验证,此节点设置应用程序的身份验证策略。 customErrors自定义错误信息设置。 authorization授权, 此节设置应用程序的授权策略。14 .列举ASP.NET 页面之间传递值的几种方式。 1. 使用QueryString, 如.?id=1; response. Redirect().可以将传递的值显示在浏览器的地址栏中。 2.使用Session变量,作用于用户个人,过量的存储会导致服务器内存资源的耗尽。3.Application对象的作用范围为全局,对所有用户都有效。其常用方法Lock 与Unlock。4.使用Cookie对象变量,存值-Response.AppendCookie(Cookie名称),拿值:Request.CookieCookie名称.Value。5.使用Server.Transfer,15.请说明在.net中常用的几种页面间传递参数的方法,并说出他们的优缺点。 session(viewstate) 会话状态,简单,但易丢失。application 应用程序状态 全局。cookie 简单,但可能不支持,可能被伪造。 input type=hidden 简单,可能被伪造。url参数简单,显示于地址栏,长度有限,数据库稳定,安全,但性能相对弱。16override与重载的区别Override用来重写父类的方法,重载-使用相同名的方法或操作符拥有不同类型的参数17、.net的错误处理机制是什么?try可能要出错的代码catch扑捉到错误后的处理finally不论代码是否出错都要执行18、C中接口和类的异同:接口是负责功能的定义,(是一种标准和规范,约束类的行为)项目中通过接口来规范类,操作类以及抽象类的概念! 而类是负责功能的具体实现!在类中也有抽象类的定义,抽象类与接口的区别在于: 抽象类是一个不完全的类,类里面有抽象的方法和属性,也可以有具体的方法和属性,需要进一步的专业化。 但接口是一个行为的规范,里面的所有东西都是抽象的! 一个类只可以继承一个基类也就是父类,但可以实现多个接口同:都不能实例化对象。 都包含未实现的方法声明(两者中的方法都不可以有方法体)。 派生类必须全部实现未实现的方法。异:使用关键字不同。 抽象类可包含普通方法,接口只能有抽象方法。 抽象类可实现部分方法,接口则必须实现全部方法。 抽象类访问修饰符有多种,接口的方法的访问权限只有public一种。 抽象类只能单继承,接口则可多实现。】19、DataReader和DataSet的异同 DataReader和DataSet最大的区别:在于DataReader使用时始终占用SqlConnection,在线操作数据库。任何对SqlConnection的操作都会引发DataReader的异常.因为DataReader每次只在内存中加载一条数据,所以占用的内存是很小的.因为DataReader的特殊性和高性能.所以DataReader是只进的.你读了第一条后就不能再去读取第一条了.DataSet则是将数据一次性加载在内存中.断开与数据库连接。读取完毕即放弃数据库连接.因为DataSet将数据全部加载在内存中.所以比较消耗内存.但是却比DataReader要灵活.可以动态的添加行,列,数据.对数据库进行回传更新操作;20. 在c#中using和new这两个关键字有什么意义,请写出你所知道的意义?Using 引入一个命名空间,他实现了IDisposable的类型对象调用Dipose方法,using语句能够保证使用的对象的Dispose方法在using语句块结束时调用,无论是否有异常被抛出,C#编译器在编译时自动为using语句加上try/finally块,所有using的本质和异常捕捉语句一样,但语法更为简洁,所有using使用的对象都应该在using语句开始后再初始化,以保证所有的对象能够被DisposeUsing有三种用途:引用命名空间;为命名空间或类型创建别名;使用Using语句。New 实例化一个对象,或修饰一个方法,表此方法完全重写此方法;(使用new修饰符显式隐藏从基类继承的成员。若要隐藏继承的成员,请使用相同名称在派生类中声明该成员,并用NEW修饰符修饰它)21.谈谈类和结构的区别?1.结构是值类型:值类型在栈上分配地址,所有的基类型都是结构类型类是引用类型:引用类型在堆上分配地址 堆栈的执行效率要比堆的执行效率高可是堆栈的资源有限,不适合处理大的逻辑复杂的对象所以结构处理作为基类型对待的小对象,而类处理某个商业逻辑2继承性结构:不能从另外一个结构或者类继承,本身也不能被继承,虽然结构没有明确的用sealed声明,可是结构是隐式的sealed .类:完全可扩展的,除非显示的声明sealed 否则类可以继承其他类和接口,自身也能被继承注:虽然结构不能被继承 可是结构能够继承接口,方法和类继承接口一样3内部结构:结构:没有默认的构造函数,但是可以添加构造函数没有析构函数没有 abstract 和 sealed(因为不能继承)不能有protected 修饰符可以不使用new 初始化在结构中初始化实例字段是错误的类:有默认的构造函数有析构函数可以使用 abstract 和 sealed有protected 修饰符必须使用new 初始化22.什么是SOAP,有哪些应用。答:SOAP(Simple Object Access Protocol )简单对象访问协议是在分散或分布式的环境中交换信息并执行远程过程调用的协议,是一个基于XML的协议。使用SOAP,不用考虑任何特定的传输协议(最常用的还是HTTP协议),可以允许任何类型的对象或代码,在任何平台上,以任何一种语言相互通信。这种相互通信采用的是XML格式的消息23.常用的调用webservice方法有哪些?可以从浏览器ASP页或其他WEB服务调用可以使用HTTP-GET HTTP-POST访问WEB服务。也可以从ASP页或其他WEB服务向其他WEB服务发出SOAP请求GET、POST SOAP 使用WEB服务代理24 私有程序集与共享程序集有什么区别?一个私有程序集通常为单个应用程序所使用,并且存储于这个应用程序所在的目录之中,或此目录下面的一个子目录中。共享程序集通常存储在全局程序集缓存(Global Assembly Cache)之中,这是一个由.NET运行时所维护的程序集仓库。共享程序集通常是对许多应用程序都有用的代码库,比如.NET Framework类。25 请解释进程与线程的区别?进程与程序的区别? 一般,一个应用程序对应于一个或多个进程,可以把进程看作是该应用程序在*作系统中的标识;而一个进程通常由多个线程组成,而线程是*作系统为该应用程序分配处理时间的最小单元。 26 CLR与IL分别是什么含义? CLR:公共语言运行时,类似于Java中的JVM,Java虚拟机;在.Net环境下,各种编程语言使用一种共同的基础资源环境,这就是CLR,CLR将直接与操作系统进行通信,而编程语言如C#.NET将尽量避免直接与*作系统直接通信,加强了程序代码的执行安全性,可以这样看:CLR就是具体的编程语言如:C#.NET与*作系统之间的翻译,同时它为具体的编程语言提供了许多资源:IL,中间语言,也称MSIL,微软中间语言,或CIL,通用中间语言;所有.NET源代码(不管用哪种语言编写)在进行编译时都被编译成IL。在应用程序运行时被即时(Just-In-Time,JIT)编译器处理成为机器码,被解释及执行。27.什么叫做SQL注入,如何防止?请举例说明。 利用sql关键字对网站进行攻击。过滤关键字等 28.请叙述类与结构的区别。1)、结构是值类型;2)、结构不支持继承;3)、结构不能定义默认的构造函数;4)、结构不能定义析构函数;5)、结构不能使用初始值设置域值。29. ASP.net的身份验证方式有哪些?分别是什么原理?术语 定义 Windows 提供有关如何将 Windows 身份验证与 Microsoft Internet 信息服务 (IIS) 身份验证结合使用来确保 ASP.NET 应用程序安全的信息。Forms 提供有关如何使用您自己的代码创建应用程序特定的登录窗体并执行身份验证的信息。使用 Forms 身份验证的一种简便方法是使用 ASP.NET 成员资格和 ASP.NET 登录控件,它们一起提供了一种只需少量或无需代码就可以收集、验证和管理用户凭据的方法。有关更多信息,请参见使用成员资格管理用户和 ASP.NET 登录控件概述。Passport 提供有关由 Microsoft 提供的集中身份验证服务的信息,该服务为成员站点提供单一登录和核心配置文0件服务。30.请问: String类与StringBuilder类有什么区别?(简答) a) string是个独特的基本数据类型,它是基本数据类型中唯一的引用类型。 StringBuilder也是引用类型;b) string虽然是引用类型,但其分配一般不使用new表达式,而StringBuilder需要使用new表达式;c) 用string.Empty表示空字符串,不要用“”,由于string.Empty的定义为public static readonly string Empty,编译时会转化成“”,但是string.Empty是一个常数,“”是一个字符串对象,对字符串对象进行运算总是很慢的。使用new StringBuilder()表示空的StringBuilder;d) 使用string或者StringBuilder前要检查字符串是否为null,null意味着字符串没有赋值,没有分配内存;e) 使用Length来检查检查String或者StringBuilder的长度,如果为0表示空字符;f) string的值存放在常量池中,引用置于栈上; StringBuilder的值存放在堆中,引用存放在栈上;g) 任何对string的修改都会创建一个新string对象;而StringBuilder的Append方法只是修改最初分配的空间上的数据,并能动态改变容量;h) 需要按引用传递两个参数才能交换两个string或者StringBuilder对象;频繁进行字符串连接操作时,使用StringBuilder来改善性能,连接操作越频繁,差别越明显。31.请叙述属性与索引器的区别。 属性 索引器 通过名称标识 通过签名标识。 通过简单名称或成员访问来访问。 通过元素访问来访问。 可以为静态成员或实例成员。 必须为实例成员。 属性的 get 访问器没有参数。 索引器的get访问器具有与索引器相同的形参表。 属性的 set访问器包含隐式value参数。 除了value参数外,索引器的 set 访问器还具有与索引器相同的形参表。 32.请叙述const与readonly的区别。 readonly 关键字与 const 关键字不同:const 字段只能在该字段的声明中初始化。readonly 字段可以在声明或构造函数中初始化。因此,根据所使用的构造函数,readonly 字段可能具有不同的值。另外,const 字段是编译时常数,而 readonly 字段可用于运行时常数。 readonly 只能在声明时或者构造函数里面初始化,并且不能在 static 修饰的构造函数里面。 33.重载与覆盖的区别1、方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系。2、覆盖只能由一个方法,或只能由一对方法产生关系;方法的重载是多个方法之间的关系。3、覆盖要求参数列表相同;重载要求参数列表不同。4、覆盖关系中,调用那个方法体,是根据对象的类型(对象对应存储空间类型)来决定;重载关系,是根据调用时的实参表与形参表来选择方法体的。=*34、在C中,string str = null 与 string str = “ ”。string str = null 是不给他分配内存空间,而string str = 给它分配长度为空字符串的内存空间.35 Internal修饰符有什么含义?internal数据访问修饰符,表示对所修饰的成员在当前程序集内可以进行没有任何限制的访问;但在当前程序集外部则不能进行访问,其可访问性级别低于public ,高于protected。36 JAVA的代码是半编译半解释的,C#的代码是否也是这样C#中对于程序代码的处理很类似于Java中的程序代码处理机制;也可以称作半编译半解释,具体为:所有.NET源代码(不管用哪种语言编写)在进行编译时都被编译成IL。在应用程序运行时被即时(Just-In-Time,JIT)编译器处理成为机器码,被解释及执行。37 什么是程序集和应用程序域?程序集(Assembly)是一个由类型定义,数据文件和资源文件组成的逻辑集合。每个程序集都包含一个程序集清单,该清单通常被附加在某个文件头上,也可以设置单独建立一个文件来包含该清单。应用程序域是CLR中提供代码运行范围,错误隔离和安全设置隔离的逻辑单元,功能类似于操作系统的进程。一个或多个应用程序域在一个操作系统的进程中运行,应用程序域的创建和销毁所需的开销,相对于操作系统进程较小。但和系统进程一样,应用程序域之间的数据共享相当困难。38 请解释进程与线程的区别?进程与程序的区别?一般,一个应用程序对应于一个或多个进程,可以把进程看作是该应用程序在*作系统中的标识;而一个进程通常由多个线程组成,而线程是*作系统为该应用程序分配处理时间的最小单元。39 CLR与IL分别是什么含义?CLR:公共语言运行时,类似于Java中的JVM,Java虚拟机;在.Net环境下,各种编程语言使用一种共同的基础资源环境,这就是CLR,CLR将直接与*作系统进行通信,而编程语言如C#.NET将尽量避免直接与*作系统直接通信,加强了程序代码的执行安全性;40 对象能否调用静态方法不能。对于类内部定义的静态变量及静态方法,该类的对象均不能调用。41 .请解释ASP.NET中以什么方式进行数据验证 非空验证(RequiredFieldValidator) 比较验证(CompareValidator)范围验证(RangeValidator) 正则表达式验证(RegularExpressionValidator)自定义验证控件(CustomValidator) 集中验证信息处理控件(ValidationSummary)42 WEB控件可以激发服务端事件,请谈谈服务端事件是怎么发生并解释其原理?自动传回是什么?为什么要使用自动传回。在web控件发生事件时,客户端采用提交的形式将数据交回服务端,服务端先调用Page_Load事件,然后根据传回的状态信息自动调用服务端事件自动传回是当我们在点击客户端控件时,采用提交表单的形式将数据直接传回到服务端只有通过自动传回才能实现服务端事件的机制,如果没有自动回传机制就只能调用客户端事件,而不能调用服务端事件(c/s是客户端和服务器,b/s是浏览器和服务器。 c/s在客户端要安装软件的,b/s只要有IE就可以浏览。 c/s的扩展升级比较困难,b/s就很容易的。 c/s的安全性好一些,b/s就没有c/s的高。 c/s一般用在局域网,b/s一般用在广域网。) 43 Session的存储方式和设置方法Session数据一共有四种存储方式,分别为存储在IIS进程中,状态服务器中,SqlServer数据库中和自定义程序中,除了准备必要的服务外(如SQL SERVER数据库服务器),还需要配置站点的Web.config。44 请解释什么是上下文对象,在什么情况下要使用上下文对象上下文对象是指HttpContext类的Current 属性,当我们在一个普通类中要访问内置对象(Response,Request,Session,Server,Appliction,page,cache,context,trace)时就要以使用此对象44.什么是ASP.net中的用户控件,他和自定义控件的区别?用户控件就是.ascx扩展名的东西,可以拖到不同的页面中调用,以节省代码.比如登陆可能在多个页面上有,就可以做成用户控件,但是有一个问题就是用户控件拖到不同级别的目录下后里面的图片等的相对路径会变得不准确,需要自已写方法调整.1、用户控件只能在当前项目中使用,而自定义控件可以在多个项目中重复使用2、自定义控件最终编译成动态连接库形式,使用自定义控件时,可以在项目中直接添加对该动态库的引用,然后通过代码创建该自定义控件3、如果自定义控件从已有的控件继承而来,则可以在已有的控件的OnPaint事件中重绘该控件的外观45.列举一下你所了解的XML技术及其应用xml可以用来做网页(xslt) xml可以当作数据库 xml可以用来保存对象的系列化(web服务好象是基于这个的)46.ADO.net中常用的对象有哪些?分别描述一下。对象说明Connection建立与特定数据源的连接。 所有 Connection 对象的基类均为 DbConnection 类。Command对数据源执行命令。 公开 Parameters,并可在 Transaction 范围内从 Connection 执行。 所有 Command 对象的基类均为 DbCommand 类。DataReader从数据源中读取只进且只读的数据流。 所有 DataReader 对象的基类均为 DbDataReader 类。DataAdapter使用数据源填充 DataSet 并解决更新。 所有 DataAdapter 对象的基类均为 DbDataAdapter 类。Transaction 将命令登记在数据源处的事务中CommandBuilder一个帮助器对象,它自动生成 DataAdapter 的命令属性或从存储过程中派生参数信息,并填充 Command 对象的 Parameters 集合ConnectionStringBuilder 一个帮助器对象,它提供一种用于创建和管理由 Connection 对象使用的连接字符串的内容的简单方法47.如何理解委托?委托类似于 C+ 函数指针,但它是类型安全的。委托允许将方法作为参数进行传递。委托可用于定义回调方法。委托可以链接在一起;例如,可以对一个事件调用多个方法。48.net中读写数据库需要用到哪些类?他们的作用Configuration ,Sqlconnection, Sqlcommand49.UDP连接和TCP连接的异同。UDP 传输速度快但不安全TCP 传输速度相比UDP而言慢一些 但是安全50.什么是code-Behind技术。ASPX,RESX和CS三个后缀的文件,这个就是代码分离.实现了HTML代码和服务器代码分离.方便代码编写和整理51.如何理解.net中的垃圾回收机制。在.NET与J2EE中的垃圾回收不同,在J2EE中,垃圾回收要写一大堆代码来处理,但是。NET中将会自动处理。垃圾回收就是将占用在内存中用不到的东西回收从而释放内存。52.概述反射和序列化 反射:程序集包含模块,而模块包含类型,类型又包含成员。反射则提供了封装程序集、模块和类型的对象。您可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。然后,可以调用类型的方法或访问其字段和属性 序列化:序列化是将对象转换为容易传输的格式的过程。例如,可以序列化一个对象,然后使用 HTTP 通过 Internet 在客户端和服务器之间传输该对象。在另一端,反序列化将从该流重新构造对象。53.概述o/r mapping 的原理 利用反射,配置 将类于数据库表映射54.用sealed修饰的类有什么特点 sealed 修饰符用于防止从所修饰的类派生出其它类。如果一个密封类被指定为其它类的基类,则会发生编译时错误。密封类不能同时为抽象类。sealed 修饰符主要用于防止非有意的派生,但是它还能促使某些运行时优化。具体说来,由于密封类永远不会有任何派生类,所以对密封类的实例的虚拟函数成员的调用可以转换为非虚拟调用来处理。55.概述.NET里对 remoting 和 webservice 两项技术的理解和实际中的应用。远程逻辑调用,remoing接口只能用在.net中 56. EXE与DLL之间的区别?EXE可以直接执行,DLL是动态链接库,不能被直接执行,附加到某个进程中才能执行.57. 什么是强类型,什么是弱类型,那种更好些为什么?强类型Java,C#, 强类型在一块内存上定义了某种类型之后无法改变其类型的,例如string str;那么str不能当作int类型来使用,可以使用强制类型转化,弱类型:javascript,弱类型把一块内存上定义为多种类型58.阐述面向接口、面向对象、面向方面编程的区别 面向接口:通过接口规范对象的行为,它属于面向对象的一部分面向对象:继承,封装,多态 特点:代码好维护,安全,隐藏信息面向方面编程:将不同模块中的相似之处分离出来,在集合成一个“方面”59.property 与 attribute的区别,他们各有什么用处,这种机制的好处在哪里?Property:是一个方法是GET和SET的组合,一个是读,一个是写。Attribute :是一个对象,作用在于两个方面。一个是影响编译器的形为,另一个是把描述信息写入Assembly中。60.你对web service的体会?答:如果自己写的一些程序也希望别人可以通过Web服务来使用,也可以把自己编写的方法贴上标签WebMethed来实现Web 服务。是当编写程序时,希望实现一些别的网站已经实现过的,也用Web服务可视成XML语言的编码。可以使用别人的编码生成的XML找到自己需要的信息,来实现自己编写的程序的一些功能。 原理:利用SOAP(简单对象访问协议)在http上执行远程方法的调用,也可以使用WSDL(Web服务描述语言)来完成完整的描述Web服务,然后用UDDI注册各个服务提供商提供的服务,以便共享他们61. What is the Com+? How does it work?com+(componment object model)它解决了两个工作中的问题:1, 在以前,如果多个应用程序要使用一个函数,那么这个函数需要放在多个可执行文件中,既占用了大量的空间,2, 当函数发生问题时,需要修改每一个可执行文件中的函数,这样就浪费了大量的时间 当你使用了com+以后,这些问题应刃而解,它的好处就是可以提高的代码的重用,有利于分布式开发,而且互相不会影响 而且它可以进行事务处理,可以保证数据可一至性,准确性,它一般会用在多个数据源的事务中,它可以保证数据的正确,一直; 它的缺点: 版本号问题,详细地计划必须有;62.讲一讲你理解的web service,在.net framework中,怎么很好的结合xml? Web Service就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API. 是自包含、自描述、模块化的应用 可扩展的标记语言XML,是Web Service平台中表示数据的基本格式.通过SOAP!63.什么是弱引用、强引用?弱引用:即在引用对象的同时仍然允许对该对象进行垃圾回收。强引用:垃圾回收堆可管理所有对象类型。此堆可监视对象的整个生存期,并且仅当程序的任何部分都不引用这些对象时才将其释放64.参数传值和参数传引用的区别把值作为参数传递时,不会影响到原函数中变量的值,实际上是将该变量值的副本传递给调用的函数,而用ref关键字进行参数传引用时,传递是变量的地址,类似指针的概念.65.ASP.NET与ASP相比,主要有哪些进步?asp解释形、它是依赖于浏览器; 编译型、可以和后台代码分开的、不依赖于浏览器; 66.什么是WEB控件?使用WEB控件有那些优势? 从System.Web.UI.Control继承下来的都是Web控件。优势是减少页面复杂度,控件具有重用性。67.大概描述一下ASP。NET服务器控件的生命周期答:初始化 加载视图状态 处理回发数据 加载 发送回发更改通知 处理回发事件 预呈现 保存状态 呈现 处置 卸载 (/f?kz=192719521)68.什么是内存泄漏,怎样最简单的方法判断内存泄漏 ?内存被分配,但没有被释放,就是内存泄露。在任务管理器里面看到程序占用内存越来越多,却没有减少的迹象,很可能就发生了内存泄露。69.如果出现ASP。NET中的事件不能触发可能由于什么原因造成? 可能是表单嵌套,或是事件的委托掉了。70.请解释接口的显式实现有什么意义? 1.由于显式接口成员实现不能通过类或结构实例来访问,因此它们就不属于类或结构的自身的公共接口。当需在一个公用的类或结构中实现一些仅供内部使用(不允许外界访问)的接口时,这就特别有用。 2.显式接口成员实现可以消除因同时含有多个相同签名的接口成员所引起的多义性。如果没有显式接口成员实现,一个类或结构就不可能为具有相同签名和返回类型的接口成员分别提供相应的实现,也不可能为具有相同签名和不同返回类型的所有接口成员中的任何一个提供实现。71.如果在一个B/S结构的系统中需要传递变量值,但是又不能使用Session、Cookie、Application,您有几种方法进行处理?答:JavaScript / QueryString/数据库/全局变量/cache缓存技术72.你对微软.net企业库了解?都包括那些模块?缓存(Caching):允许开发人员在程序中合并一个本地缓存器。配置(Configuration): 允许程序读入和编写配置信息。加密(Cryptography):允许开发人员在程序中使用加密技术和信号功能。 数据访问(Data Access):允许开发人员在程序中使用标准的数据库功能。异常处理(Exception Handing):允许开发人员和规范制定者建立一套用于 处理异常的统一策略。 日志和规范应用程序(Logging and Instrumentation ):允许开发人员在程序中加入日志和规范应用程序。 安全性(Security):允许开发人员在程序中包括安全性功能。程序可以在不同的情况下使用到安 全性,比如鉴别和批准用户访问数据库,获得任务信息,以及缓存用户信息。73.传入某个属性的set方法的隐含参数的名称是什么?Value,它的类型和属性所声名的类型相同。 74.如何在C#中实现继承?在类名后加上一个冒号,再加上基类的名称。 75.C#支持多重继承么?类之间不支持,接口之间支持。类对接口叫做实现,不叫继承。 76.被protected修饰的属性/方法在何处可以访问?在继承或间接继承与这个类的子类中可以访问。 77.私有成员会被继承么?能够将非静态的方法覆写成静态方法么?会,但是不能被访问。所以看上去他们似乎是不能被继承的,但实际上确实被继承了。 不能,覆写方法的签名必须与被覆写方法的签名保持一致,除了将virtual改为override。 78.可以覆写私有的虚方法么?不可以,甚至子类中无法访问父类中的私有方法。 79.能够阻止某一个类被其他类继承么? 可以,使用关键字sealed。 80.能够实现允许某个类被继承,但不允许其中的某个方法被覆写么? 可以,标记类为public,并标记方法为sealed。 81.什么是抽象类(abstract class)?一种不可以被实例化的类。抽象类中一般含有抽象方法,当然也可有具体实现。继承类只有实现过所有抽象类的抽象方法后才能被实例化 。 82.何时必须声明一个类为抽象类? 当这个类中包含抽象方法时;或是该类并没有完全实现父类的抽象方法时。 83.接口(interface)是什么?只含有共有抽象方法(public abstract method)的类。这些方法必须在子类中被实现。 84.为什么不能指定接口中方法的修饰符? 接口中的方法用来定义对象之间通信的契约,指定接口中的方法为私有或保护没有意义。他们默认为公有方法。 85.const和readonly有什么区别?const可以用于局部常量,而readonly,实际是类的initonly字段,显然不能是局部的。86. 通过超链接怎样传递中文参数?用URL编码,通过QueryString传递,用EnCode编码 用DeCode解码87.ADO.NET相对于ADO等主要有什么改进1:不依赖于ole db提供程序,而是使用.net托管提供的程序,2:不使用com3:不在支持动态游标和服务器端游 4:,可以断开connection而保留当前数据集可用 5:强类型转换 6:xml支持(两种数据访问方式。)88.C#中的委托是什么?事件是不是一种委托?委托是一个可以对方法进行引用的类,委托类具有一个签名,并且它只能对与其签名匹配的方法进行引用。这样,委托就等效于一个类型安全函数指针或一个回调。事件是一种委托89.XML 与 HTML 的主要区别1. XML是区分大小写字母的,HTML不区分。 2. 在HTML中,如果上下文清楚地显示出段落或者列表键在何处结尾,那么你可以省略或者之类的结束 标记。在XML中,绝对不能省略掉结束标记。 3. 在XML中,拥有单个标记而没有匹配的结束标记的元素必须用一个 / 字符作为结尾。这样分析器就知道不用 查找结束标记了。 4. 在XML中,属性值必须分装在引号中。在HTML中,引号是可用可不用的。 5. 在HTML中,可以拥有不带值的属性名。在XML中,所有的属性都必须带有相应的值。 XML:存储数据,相当一个简易的数据库。区分大小写字母的,HTML:显示数据,不区分大小写。90.Session有什么重大BUG,微软提出了什么方法加以解决?是iis中由于有进程回收机制,系统繁忙的话Session会丢失,可以用Sate server或SQL Server数据库的方式存储Session不过这种方式比较慢,而且无法捕获Session的END事件。=91.堆和栈的区别?堆:由系统管理,随系统产生而存在。有关键字NEW (椎是程序运行期动态分配的内存空间,你可以根据程序的运行情况确定要分配的堆内存的大小) 栈:依赖于线程,随时线程产生而产生,消完而消完。(栈是编译期间就分配好的内存空间,因此你的代码必须就栈的大小有明确的定义)共同点:都是一块存储区域。=92.&和&的区别。&是位运算符,表示按位与运算,&是逻辑运算符,表示逻辑与(and).=93.Collection 和 Collections的区别。Collection:该成员支持 .NET Framework 结构,因此不适用于直接从代码中使用Collections命名空间包含接口和类,这些接口和类定义各种对象(如列表、队列、位数组、哈希表和字典)的集合。94.Static Nested Class 和 Inner Class的不同,说得越多越好Static Nested Class是被声明为静态(static)的内部类,它可以不依赖于外部类实例被实例化。而通常的内部类需要在外部类实例化后才能实例化。=95.HashMap和Hashtable的区别。HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable.=96.什么叫应用程序域?应用程序域可以理解为一种轻量级进程。起到安全的作用。占用资源小。=97.什么是受管制的代码?unsafe:非托管代码。不经过CLR运行。托管代码:运行的。NET平台上。(在.net环境中运行的代码都称之为受管制的代码)非托管代码:不是运行在。NET平台上的。(在.net环境之外,在Windows上运行的代码称之为不受管制的代码)98.调用WebService的方法有哪些?1.使用WSDL.exe命令行工具。 2.使用VS.NET中的Add Web Reference菜单选项99.net Remoting 的工作原理是什么?服务器端向客户端发送一个进程编号,一个程序域编号,以确定对象的位置。它是一个远程调用。可以用HTTP,TCP。等协议进行传输数据,而Web service只能用HTTP100.简要谈一下您对微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。WS主要是可利用HTTP,穿透防火墙。而Remoting可以利用TCP/IP,二进制传送提高效率。Web 服务是通过XML传输数据,是基于XML的,所以它是跨平台的,通过HTTP协议通信。而Remoting是基于。.net平台的,传输二进制数据,所以速度快,可以走多种协议。Web Service通过网络提供服务,信息的传送是XML数据包,是用SOAP封装的,是通过HTTP传输的。=101.GC是什么? 为什么要有GC?GC是垃圾收集器。程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一: System.gc() Runtime.getRuntime().gc() =102.在.net中,配件的意思是?答:Assembly程序集。(dll.exe)(中间语言,源数据,资源,装配清单)=103 .net中读写数据库需要用到那些类?他们的作用?DataSet:数据存储器。 DataCommand:执行语句命令。DataAdapter:数据的集合,用语填充。=104.什么是虚函数?什么是抽象函数?虚函数:没有实现的,可由子类继承并重写的函数。抽象函数:规定其非虚子类必须实现的函数,必须被重写。虚函数:在子类可以重新定义。抽象函数:不能实现.=105.什么是强命名?(什么是强类型系统?)RTTI:类型识别系统。Dll+版本号+文化背景+public key Token组合起来就可以生成强命名程序集=106.与的区别是服务器端脚本块;是控件的属性被绑定
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 环保设备运维工程师面试题及答案
- 纹版连接工测试考核试卷及答案
- 慈利县中医院护理题库及答案解析
- 一建黑龙江省安全b证考试题库及答案解析
- 护理药学问答题题库及答案解析
- 配电室安全知识考试题库及答案解析
- 长沙驾校从业资格证考试及答案解析
- 个人工地安全员题库及答案解析
- 安全测试题高一及答案解析
- 安全保卫试题库大全及答案解析
- 2025年淮南市大通区和寿县经开区公开招聘社区“两委”后备干部30名笔试备考题库及答案解析
- 2025云南红河红家众服经营管理有限公司社会招聘工作人员8人笔试参考题库附带答案详解
- 2025双11大促商家一站式指南
- 助理医师考试题库及答案
- 电梯管理安全试题库及答案解析
- 2.2 6、7的加减法(课件)数学青岛版一年级上册(新教材)
- DL-T 794-2024 火力发电厂锅炉化学清洗导则
- 消防战斗服穿戴培训课件
- 生理学全套课件
- 雨露计划职业教育补助-学籍证明-模板四川优秀资料
- 购牛合同参考参考
评论
0/150
提交评论