




已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.net1、ASP.NET里命名空间的定义;答:命名空间是类的逻辑分组,它组织成一个层次结构逻辑树。这个树的根是System。 在ASP.NET页面中,可以默认的使用某些命名空间中包含的类,称做标准的ASP.NET命名空间。对于其他命名空间,则必须显式地导入2、.net中类与对象的关系;答:万物都是对象,而类是对象的一个编程语言概念上的描述3、IspostBack的作用,当其值为TRUE或FALSE时的作用;答:IspostBack可以防止每次加载页面时都绑定一些数据,第一次加载页面时IspostBack的值是false,以后每次加载页面时都是true4. CLR、CTS、CLS 分别是什么意思?共公语言运行库,通用类型系统,公共语言规范5. 什么是基元类型? 由编译器直接支持的数据类型称为基元类型.6、简要谈一下您对微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。 remoting是.net中用来跨越machine, process, appdomain 进行方法调用的技术,对于三成结构的程序,就可以使用remoting技术来构建它是分布应用的基础技术.相当于以前的DCOM Web Service是一种构建应用程序的普通模型,并能在所有支持internet网通讯的操作系统上实施。Web Service令基于组件的开发和web的结合达到最佳,基于组件的对象模型; 7 .请解释ASP。NET中以什么方式进行数据验证; 非空验证,比较验证,取值范围验证,正则表达式验证及客户自定义验证五大控件,另还有一个集中验证信息处理控件8 WEB控件可以激发服务端事件,请谈谈服务端事件是怎么发生并解释其原理?自动传回是什么?为什么要使用自动传回。 在web控件发生事件时,客户端采用提交的形式将数据交回服务端,服务端先调用Page_Load事件,然后根据传回的状态信息自动调用服务端事件自动传回是当我们在点击客户端控件时,采用提交表单的形式将数据直接传回到务端只有通过自动传回才能实现服务端事件的机制,如果没有自动回传机制就只能调用客户端事件,而不能调用服务端事件9 WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用?可以调用例如: 10 请解释ASP.NET中的web页面与其隐藏类之间的关系? 一个ASP.NET页面一般都对应一个隐藏类,一般都在ASP.NET页面的声明中指定了隐藏类例如一个页面Tst1.aspx的页面声明如下Codebehind=Tst1.aspx.cs 表明经编译此页面时使用哪一个代码文件Inherits=T1.Tst1 表用运行时使用哪一个隐藏类11 什么是viewstate,能否禁用?是否所有控件都可以禁用? Viewstate是保存状态的一种机制,EnableViewState属性设置为false即可禁用:12 当发现不能读取页面上的输入的数据时很有可能是什么原因造成的?怎么解决 很有可能是在Page_Load中数据处理时没有进行Page的IsPostBack属性判断13 请解释什么是上下文对象,在什么情况下要使用上下文对象 上下文对象是指HttpContext类的Current 属性,当我们在一个普通类中要访问内置对象 (Response,Request,Session,Server,Appliction等)时就要以使用此对象14 请解释转发与跳转的区别? 转发就是服务端的跳转A页面提交数据到B页面,B页面进行处理然后从服务端跳转到其它页面跳转就是指客户端的跳转15.请简述一下用Socket进行同步通讯编程的详细步骤 1、在应用程序和远程设备中使用协议和网络地址初始化套接字 2、在应用程序中通过指定端口和地址建立监听 3、远程设备发出连接请求 4、应用程序接受连接产生通信scoket 5、应用程序和远程设备开始通讯(在通讯中应用程序将挂起直到通讯结束) 6、通讯结束,关闭应用程序和远程设备的Socket回收资源16 请解释web.config文件中的重要节点 appSettings包含自定义应用程序设置。 system.web 系统配置 compilation动态调试编译设置 customErrors自定义错误信息设置 authentication身份验证,此节设置应用程序的身份验证策略。 authorization授权, 此节设置应用程序的授权策略.17 .列举ASP.NET 页面之间传递值的几种方式。 1. 使用QueryString, 如.?id=1; response. Redirect(). 2.使用Session变量 3.使用Server.Transfer 18.请说明在.net中常用的几种页面间传递参数的方法,并说出他们的优缺点。 session(viewstate) 简单,但易丢失 application 全局 cookie 简单,但可能不支持,可能被伪造 input ttype=hidden 简单,可能被伪造 :url参数简单,显示于地址栏,长度有限 :数据库稳定,安全,但性能相对弱:19override与重载的区别Override用来重写父类的方法,重载使用相同名的方法或操作符拥有不同类型的参数20、.net的错误处理机制是什么try可能要出错的代码catch扑捉到错误后的处理finally不论代码是否出错都要执行21、C中接口和类的异同 接口是负责功能的定义,项目中通过接口来规范类,操作类以及抽象类的概念! 而类是负责功能的具体实现! 在类中也有抽象类的定义,抽象类与接口的区别在于: 抽象类是一个不完全的类,类里面有抽象的方法,属性,也可以有具体的方法和属性,需要进一步的专业化。 但接口是一个行为的规范,里面的所有东西都是抽象的! 一个类只可以继承一个基类也就是父类,但可以实现多个接口22、DataReader和DataSet的异同 DataReader和DataSet最大的区别在于,DataReader使用时始终占用SqlConnection,在线操作数据库.任何对SqlConnection的操作都会引发DataReader的异常.因为DataReader每次只在内存中加载一条数据,所以占用的内存是很小的.因为DataReader的特殊性和高性能.所以DataReader是只进的.你读了第一条后就不能再去读取第一条了.DataSet则是将数据一次性加载在内存中.抛弃数据库连接.读取完毕即放弃数据库连接.因为DataSet将数据全部加载在内存中.所以比较消耗内存.但是确比DataReader要灵活.可以动态的添加行,列,数据.对数据库进行回传更新操作;23. 在c#中using和new这两个关键字有什么意义,请写出你所知道的意义?Using 引入一个名子空间,或在使用了一个对像后自动调用其IDespose,New 实例化一个对像,或修饰一个方法,表此方法完全重写此方法;24.谈谈类和结构的区别?1.结构是值类型:值类型在堆栈上分配地址,所有的基类型都是结构类型类是引用类型:引用类型在堆上分配地址 堆栈的执行效率要比堆的执行效率高可是堆栈的资源有限,不适合处理大的逻辑复杂的对象所以结构处理作为基类型对待的小对象,而类处理某个商业逻辑2继承性结构:不能从另外一个结构或者类继承,本身也不能被继承,虽然结构没有明确的用sealed声明,可是结构是隐式的sealed .类:完全可扩展的,除非显示的声明sealed 否则类可以继承其他类和接口,自身也能被继承注:虽然结构不能被继承 可是结构能够继承接口,方法和类继承接口一样3内部结构:结构:没有默认的构造函数,但是可以添加构造函数没有析构函数没有 abstract 和 sealed(因为不能继承)不能有protected 修饰符可以不使用new 初始化在结构中初始化实例字段是错误的类:有默认的构造函数有析构函数可以使用 abstract 和 sealed有protected 修饰符必须使用new 初始化25.什么是SOAP,有哪些应用。答:SOAP(Simple Object Access Protocol )简单对象访问协议是在分散或分布式的环境中交换信息并执行远程过程调用的协议,是一个基于XML的协议。使用SOAP,不用考虑任何特定的传输协议(最常用的还是HTTP协议),可以允许任何类型的对象或代码,在任何平台上,以任何一直语言相互通信。这种相互通信采用的是XML格式的消息,具体请看:/2521621.html26.常用的调用webservice方法有哪些? 可以从浏览器、ASP页或其他WEB服务调用可以使用HTTP-GET HTTP-POST访问WEB服务也可以从ASP页或其他WEB服务向其他WEB服务发出SOAP请求GET、POST SOAP 使用WEB服务代理27 私有程序集与共享程序集有什么区别?一个私有程序集通常为单个应用程序所使用,并且存储于这个应用程序所在的目录之中,或此目录下面的一个子目录中。共享程序集通常存储在全局程序集缓存(Global Assembly Cache)之中,这是一个由.NET运行时所维护的程序集仓库。共享程序集通常是对许多应用程序都有用的代码库,比如.NET Framework类。28 请解释进程与线程的区别?进程与程序的区别? 一般,一个应用程序对应于一个或多个进程,可以把进程看作是该应用程序在*作系统中的标识;而一个进程通常由多个线程组成,而线程是*作系统为该应用程序分配处理时间的最小单元。 29 CLR与IL分别是什么含义? CLR:公共语言运行时,类似于Java中的JVM,Java虚拟机;在.Net环境下,各种编程语言使用一种共同的基础资源环境,这就是CLR,CLR将直接与*作系统进行通信,而编程语言如C#.NET将尽量避免直接与*作系统直接通信,加强了程序代码的执行安全性,可以这样看:CLR就是具体的编程语言如:C#.NET与*作系统之间的翻译,同时它为具体的编程语言提供了许多资源:IL,中间语言,也称MSIL,微软中间语言,或CIL,通用中间语言;所有.NET源代码(不管用哪种语言编写)在进行编译时都被编译成IL。在应用程序运行时被即时(Just-In-Time,JIT)编译器处理成为机器码,被解释及执行。30.什么叫做SQL注入,如何防止?请举例说明。 利用sql关键字对网站进行攻击。过滤关键字等 31.请叙述类与结构的区别。1)、结构是值类型;2)、结构不支持继承;3)、结构不能定义默认的构造函数;4)、结构不能定义析构函数;5)、结构不能使用初始值设置域值。32. ASP.net的身份验证方式有哪些?分别是什么原理?术语 定义 Windows 提供有关如何将 Windows 身份验证与 Microsoft Internet 信息服务 (IIS) 身份验证结合使用来确保 ASP.NET 应用程序安全的信息。Forms 提供有关如何使用您自己的代码创建应用程序特定的登录窗体并执行身份验证的信息。使用 Forms 身份验证的一种简便方法是使用 ASP.NET 成员资格和 ASP.NET 登录控件,它们一起提供了一种只需少量或无需代码就可以收集、验证和管理用户凭据的方法。有关更多信息,请参见使用成员资格管理用户和 ASP.NET 登录控件概述。Passport 提供有关由 Microsoft 提供的集中身份验证服务的信息,该服务为成员站点提供单一登录和核心配置文0件服务。33.请问: String类与StringBuilder类有什么区别?为什么在.Net类库中要同时存在这2个类?(简答) 如果要操作一个不断增长的字符串,尽量不用String类,改用StringBuilder类。两个类的工作原理不同:String类是一种传统的修改字符串的方式,它确实可以完成把一个字符串添加到另一个字符串上的工作没错,但是在.NET框架下,这个操作实在是划不来。因为系统先是把两个字符串写入内存,接着删除原来的String对象,然后创建一个String对象,并读取内存中的数据赋给该对象。这一来二去的,耗了不少时间。而使用System.Text命名空间下面的StringBuilder类就不是这样了,它提供的Append方法,能够在已有对象的原地进行字符串的修改,简单而且直接。当然,一般情况下觉察不到这二者效率的差异,但如果你要对某个字符串进行大量的添加操作,那么StringBuilder类所耗费的时间和String类简直不是一个数量级的。 34.请叙述属性与索引器的区别。 属性 索引器 通过名称标识 通过签名标识。 通过简单名称或成员访问来访问。 通过元素访问来访问。 可以为静态成员或实例成员。 必须为实例成员。 属性的 get 访问器没有参数。 索引器的get访问器具有与索引器相同的形参表。 属性的 set访问器包含隐式valu参数。 除了value参数外,索引器的 set 访问器还具有与索引器相同的形参表。 35.请叙述const与readonly的区别。每一个class至多只可以定义一个static构造函数,并且不允许增加访问级别关键字,参数列必须为空。为了不违背编码规则,通常把static数据成员声明为private,然后通过statci property提供读写访问。 const 关键字用于修改字段或局部变量的声明。它指定字段或局部变量的值不能被修改。常数声明引入给定类型的一个或多个常数。 const数据成员的声明式必须包含初值,且初值必须是一个常量表达式。因为它是在编译时就需要完全评估。 const成员可以使用另一个const成员来初始化,前提是两者之间没有循环依赖。 readonly在运行期评估赋值,使我们得以在确保“只读访问”的前提下,把object的初始化动作推迟到运行期进行。 readonly 关键字与 const 关键字不同:const 字段只能在该字段的声明中初始化。readonly 字段可以在声明或构造函数中初始化。因此,根据所使用的构造函数,readonly 字段可能具有不同的值。另外,const 字段是编译时常数,而 readonly 字段可用于运行时常数。 readonly 只能在声明时或者构造函数里面初始化,并且不能在 static 修饰的构造函数里面。 36.重载与覆盖的区别1、方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系。2、覆盖只能由一个方法,或只能由一对方法产生关系;方法的重载是多个方法之间的关系。3、覆盖要求参数列表相同;重载要求参数列表不同。4、覆盖关系中,调用那个方法体,是根据对象的类型(对象对应存储空间类型)来决定;重载关系,是根据调用时的实参表与形参表来选择方法体的。37、在C中,string str = null 与 string str = “ ”。string str = null 是不给他分配内存空间,而string str = 给它分配长度为空字符串的内存空间.38 Internal修饰符有什么含义?internal数据访问修饰符,表示对所修饰的成员在当前程序集内可以进行没有任何限制的访问;但在当前程序集外部则不能进行访问,其可访问性级别低于public ,高于protected。39 JAVA的代码是半编译半解释的,C#的代码是否也是这样C#中对于程序代码的处理很类似于Java中的程序代码处理机制;也可以称作半编译半解释,具体为:所有.NET源代码(不管用哪种语言编写)在进行编译时都被编译成IL。在应用程序运行时被即时(Just-In-Time,JIT)编译器处理成为机器码,被解释及执行。40 私有程序集与共享程序集有什么区别?一个私有程序集通常为单个应用程序所使用,并且存储于这个应用程序所在的目录之中,或此目录下面的一个子目录中。共享程序集通常存储在全局程序集缓存(Global Assembly Cache)之中,这是一个由.NET运行时所维护的程序集仓库。共享程序集通常是对许多应用程序都有用的代码库,比如.NET Framework类。41 请解释进程与线程的区别?进程与程序的区别?一般,一个应用程序对应于一个或多个进程,可以把进程看作是该应用程序在*作系统中的标识;而一个进程通常由多个线程组成,而线程是*作系统为该应用程序分配处理时间的最小单元。42 CLR与IL分别是什么含义?CLR:公共语言运行时,类似于Java中的JVM,Java虚拟机;在.Net环境下,各种编程语言使用一种共同的基础资源环境,这就是CLR,CLR将直接与*作系统进行通信,而编程语言如C#.NET将尽量避免直接与*作系统直接通信,加强了程序代码的执行安全性,可以这样看:CLR就是具体的编程语言如:C#.NET与*作系统之间的翻译,同时它为具体的编程语言提供了许多资源:43 对象能否调用静态方法不能。对于类内部定义的静态变量及静态方法,该类的对象均不能调用。44 .请解释ASP.NET中以什么方式进行数据验证 A 中有非空验证,比较验证,取值范围验证,正则表达式验证及客户自定义验证五大控件,另还有一个集中验证信息处理控件45 WEB控件可以激发服务端事件,请谈谈服务端事件是怎么发生并解释其原理?自动传回是什么?为什么要使用自动传回。在web控件发生事件时,客户端采用提交的形式将数据交回服务端,服务端先调用Page_Load事件,然后根据传回的状态信息自动调用服务端事件自动传回是当我们在点击客户端控件时,采用提交表单的形式将数据直接传回到服务端只有通过自动传回才能实现服务端事件的机制,如果没有自动回传机制就只能调用客户端事件,而不能调用服务端事件46 什么是viewstate,能否禁用?是否所用控件都可以禁用?Viewstate是保存状态的一种机制,EnableViewState属性设置为false即可禁用47 请解释什么是上下文对象,在什么情况下要使用上下文对象上下文对象是指HttpContext类的Current 属性,当我们在一个普通类中要访问内置对象(Response,Request,Session,Server,Appliction,page,cache,context,trace)时就要以使用此对象48.什么是ASP.net中的用户控件,他和自定义控件的区别?用户控件就是.ascx扩展名的东西,可以拖到不同的页面中调用,以节省代码.比如登陆可能在多个页面上有,就可以做成用户控件,但是有一个问题就是用户控件拖到不同级别的目录下后里面的图片等的相对路径会变得不准确,需要自已写方法调整.1、用户控件只能在当前项目中使用,而自定义控件可以在多个项目中重复使用2、自定义控件最终编译成动态连接库形式,使用自定义控件时,可以在项目中直接添加对该动态库的引用,然后通过代码创建该自定义控件3、如果自定义控件从已有的控件继承而来,则可以在已有的控件的OnPaint事件中重绘该控件的外观49.列举一下你所了解的XML技术及其应用xml可以用来做网页(xslt) xml可以当作数据库 xml可以用来保存对象的系列化(web服务好象是基于这个的)50.ADO.net中常用的对象有哪些?分别描述一下。Connection 数据库连接对像Command 数据库命令DataReader 数据读取器DataSet 数据集51如何理解委托?委托类似于 C+ 函数指针,但它是类型安全的。委托允许将方法作为参数进行传递。委托可用于定义回调方法。委托可以链接在一起;例如,可以对一个事件调用多个方法。52.net中读写数据库需要用到哪些类?他们的作用Configuration,Sqlconnection,Sqlcommand53.UDP连接和TCP连接的异同。UDP 传输速度快但不安全TCP 传输速度相比UDP而言慢一些 但是安全54.什么是code-Behind技术。ASPX,RESX和CS三个后缀的文件,这个就是代码分离.实现了HTML代码和服务器代码分离.方便代码编写和整理55.如何理解.net中的垃圾回收机制。在.NET与J2EE中的垃圾回收不同,在J2EE中,垃圾回收要写一大堆代码来处理,但是。NET中将会自动处理。垃圾回收就是将占用在内存中用不到的东西回收从而释放内存。56.概述反射和序列化 反射:程序集包含模块,而模块包含类型,类型又包含成员。反射则提供了封装程序集、模块和类型的对象。您可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。然后,可以调用类型的方法或访问其字段和属性 序列化:序列化是将对象转换为容易传输的格式的过程。例如,可以序列化一个对象,然后使用 HTTP 通过 Internet 在客户端和服务器之间传输该对象。在另一端,反序列化将从该流重新构造对象。57.概述o/r mapping 的原理 利用反射,配置 将类于数据库表映射58.用sealed修饰的类有什么特点 sealed 修饰符用于防止从所修饰的类派生出其它类。如果一个密封类被指定为其它类的基类,则会发生编译时错误。密封类不能同时为抽象类。sealed 修饰符主要用于防止非有意的派生,但是它还能促使某些运行时优化。具体说来,由于密封类永远不会有任何派生类,所以对密封类的实例的虚拟函数成员的调用可以转换为非虚拟调用来处理。59.概述.NET里对 remoting 和 webservice 两项技术的理解和实际中的应用。远程逻辑调用,remoing接口只能用在.net中 60. EXE与DLL之间的区别?EXE可以直接执行,DLL是动态链接库,不能被直接执行,附加到某个进程中才能执行.61 什么是强类型,什么是弱类型,那种更好些为什么?强类型Java,C#, 强类型在一块内存上定义了某种类型之后无法改变起类型的,例如string str;那么str不能当作int类型来使用,可以使用强制类型转化,弱类型:javascript,弱类型把一块内存上定义为多种类型62.阐述面向接口、面向对象、面向方面编程的区别 面向接口:通过接口规范对象的行为,它属于面向对象的一部分面向对象:继承,封装,多态 特点:代码好维护,安全,隐藏信息面向方面编程:将不同模块中的相似之处分离出来,在集合成一个“方面”63.property 与 attribute的区别,他们各有什么用处,这种机制的好处在哪里?Property:是一个方法是GET和SET的组合,一个是读,一个是写。Attribute :是一个对象,作用在于两个方面。一个是影响编译器的形为,另一个是把描述信息写入Assembly中。64.你对web service的体会?答:如果自己写的一些程序也希望别人可以通过Web服务来使用,也可以把自己编写的方法贴上标签WebMethed来实现Web 服务。是当编写程序时,希望实现一些别的网站已经实现过的,也用Web服务可视成XML语言的编码。可以使用别人的编码生成的XML找到自己需要的信息,来实现自己编写的程序的一些功能。65. What is the Com+? How does it work?com+(componment object model)它解决了两个工作中的问题:1, 在以前,如果多个应用程序要使用一个函数,那么这个函数需要放在多个可执行文件中,既占用了大量的空间,2, 当函数发生问题时,需要修改每一个可执行文件中的函数,这样就浪费了大量的时间 当你使用了com+以后,这些问题应刃而解,它的好处就是可以提高的代码的重用,有利于分布式开发,而且互相不会影响 而且它可以进行事务处理,可以保证数据可一至性,准确性,它一般会用在多个数据源的事务中,它可以保证数据的正确,一直; 它的缺点: 版本号问题,详细地计划必须有;66.讲一讲你理解的web service,在.net framework中,怎么很好的结合xml? Web Service就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API. 是自包含、自描述、模块化的应用 可扩展的标记语言XML,是Web Service平台中表示数据的基本格式.通过SOAP!67.什么是弱引用、强引用?弱引用:即在引用对象的同时仍然允许对该对象进行垃圾回收。强引用:垃圾回收堆可管理所有对象类型。此堆可监视对象的整个生存期,并且仅当程序的任何部分都不引用这些对象时才将其释放68.参数传值和参数传引用的区别把值作为参数传递时,不会影响到原函数中变量的值,实际上是将该变量值的副本传递给调用的函数,而用ref关键字进行参数传引用时,传递是变量的地址,类似指针的概念.69.ASP。NET与ASP相比,主要有哪些进步?asp解释形、它是依赖于浏览器 编译型、可以和后台代码是分开的、不依赖与浏览器; 70.什么是WEB控件?使用WEB控件有那些优势? 从System.Web.UI.Control继承下来的都是Web控件。优势是减少页面复杂度,控件具有重用性。71.大概描述一下ASP。NET服务器控件的生命周期答:初始化 加载视图状态 处理回发数据 加载 发送回发更改通知 处理回发事件 预呈现 保存状态 呈现 处置 卸载72.什么是内存泄漏,怎样最简单的方法判断被存泄漏 ?内存被分配,但没有被释放,就是内存泄露。在任务管理器里面看到程序占用内存越来越多,却没有减少的迹象,很可能就发生了内存泄露。73.如果出现ASP。NET中的事件不能触发可能由于什么原因造成? 可能是表单嵌套,或是事件的委托掉了。74.请解释接口的显式实现有什么意义? 1.由于显式接口成员实现不能通过类或结构实例来访问,因此它们就不属于类或结构的自身的公共接口。当需在一个公用的类或结构中实现一些仅供内部使用(不允许外界访问)的接口时,这就特别有用。 2.显式接口成员实现可以消除因同时含有多个相同签名的接口成员所引起的多义性。如果没有显式接口成员实现,一个类或结构就不可能为具有相同签名和返回类型的接口成员分别提供相应的实现,也不可能为具有相同签名和不同返回类型的所有接口成员中的任何一个提供实现。75.如果在一个B/S结构的系统中需要传递变量值,但是又不能使用Session、Cookie、Application,您有几种方法进行处理?答:JavaScript / Cache / QueryString/数据库/全局变量/cache缓存技术76.你对微软.net企业库了解?都包括那些模块?缓存(Caching):允许开发人员在程序中合并一个本地缓存器。配置(Configuration): 允许程序读入和编写配置信息。加密(Cryptography):允许开发人员在程序中使用加密技术和信号功能。 数据访问(Data Access):允许开发人员在程序中使用标准的数据库功能。异常处理(Exception Handing):允许开发人员和规范制定者建立一套用于 处理异常的统一策略。 日志和规范应用程序(Logging and Instrumentation ):允许开发人员在程序中加入日志和规范应用程序。 安全性(Security):允许开发人员在程序中包括安全性功能。程序可以在不同的情况下使用到安 全性,比如鉴别和批准用户访问数据库,获得任务信息,以及缓存用户信息。77.传入某个属性的set方法的隐含参数的名称是什么?Value,它的类型和属性所声名的类型相同。 78.如何在C#中实现继承?在类名后加上一个冒号,再加上基类的名称。 79.C#支持多重继承么?类之间不支持,接口之间支持。类对接口叫做实现,不叫继承。 80.被protected修饰的属性/方法在何处可以访问?在继承或间接继承与这个类的子类中可以访问。 71.私有成员会被继承么?会,但是不能被访问。所以看上去他们似乎是不能被继承的,但实际上确实被继承了。 能够将非静态的方法覆写成静态方法么?不能,覆写方法的签名必须与被覆写方法的签名保持一致,除了将virtual改为override。 82.可以覆写私有的虚方法么?不可以,甚至子类中无法访问父类中的私有方法。 83.能够阻止某一个类被其他类继承么? 可以,使用关键字sealed。 84.能够实现允许某个类被继承,但不允许其中的某个方法被覆写么? 可以,标记类为public,并标记方法为sealed。 85.什么是抽象类(abstract class)?一种不可以被实例化的类。抽象类中一般含有抽象方法,当然也可有具体实现。继承类只有实现过所有抽象类的抽象方法后才能被实例化 。 86.何时必须声明一个类为抽象类? 当这个类中包含抽象方法时,或是该类并没有完全实现父类的抽象方法时。 87.接口(interface)是什么?只含有共有抽象方法(public abstract method)的类。这些方法必须在子类中被实现。 88.为什么不能指定接口中方法的修饰符? 接口中的方法用来定义对象之间通信的契约,指定接口中的方法为私有或保护没有意义。他们默认为公有方法。 89.const和readonly有什么区别?const可以用于局部常量,而readonly,实际是类的initonly字段,显然不能是局部的。90. 通过超链接怎样传递中文参数?用URL编码,通过QueryString传递,用EnCode编码 用DeCode解码91ADO.NET相对于ADO等主要有什么改进1:不依赖于ole db提供程序,而是使用.net托管提供的程序,2:不使用com3:不在支持动态游标和服务器端游 4:,可以断开connection而保留当前数据集可用 5:强类型转换 6:xml支持92.C#中的委托是什么?事件是不是一种委托?委托是一个可以对方法进行引用的类,委托类具有一个签名,并且它只能对与其签名匹配的方法进行引用。这样,委托就等效于一个类型安全函数指针或一个回调。事件是一种委托93.XML 与 HTML 的主要区别1. XML是区分大小写字母的,HTML不区分。 2. 在HTML中,如果上下文清楚地显示出段落或者列表键在何处结尾,那么你可以省略或者之类的结束 标记。在XML中,绝对不能省略掉结束标记。 3. 在XML中,拥有单个标记而没有匹配的结束标记的元素必须用一个 / 字符作为结尾。这样分析器就知道不用 查找结束标记了。 4. 在XML中,属性值必须分装在引号中。在HTML中,引号是可用可不用的。 5. 在HTML中,可以拥有不带值的属性名。在XML中,所有的属性都必须带有相应的值。 XML:存储数据,相当一个简易的数据库。区分大小写字母的,HTML:显示数据,不区分大小写。94.Session有什么重大BUG,微软提出了什么方法加以解决?是iis中由于有进程回收机制,系统繁忙的话Session会丢失,可以用Sate server或SQL Server数据库的方式存储Session不过这种方式比较慢,而且无法捕获Session的END事件。95.堆和栈的区别?堆:由系统管理,随系统产生而存在。有关键字NEW 栈:依赖于线程,随时线程产生而产生,消完而消完。共同点:都是一块存储区域。96.&和&的区别。&是位运算符,表示按位与运算,&是逻辑运算符,表示逻辑与(and).97.Collection 和 Collections的区别。Collection:该成员支持 .NET Framework 结构,因此不适用于直接从代码中使用Collections命名空间包含接口和类,这些接口和类定义各种对象(如列表、队列、位数组、哈希表和字典)的集合。98Static Nested Class 和 Inner Class的不同,说得越多越好Static Nested Class是被声明为静态(static)的内部类,它可以不依赖于外部类实例被实例化。而通常的内部类需要在外部类实例化后才能实例化。99.HashMap和Hashtable的区别。HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable.100.什么叫应用程序域?应用程序域可以理解为一种轻量级进程。起到安全的作用。占用资源小。101.什么是受管制的代码?unsafe:非托管代码。不经过CLR运行。托管代码:运行的。NET平台上。非托管代码:不是运行在。NET平台上的。102.调用WebService的方法有哪些?1.使用WSDL.exe命令行工具。 2.使用VS.NET中的Add Web Reference菜单选项103.net Remoting 的工作原理是什么?服务器端向客户端发送一个进程编号,一个程序域编号,以确定对象的位置。它是一个远程调用。可以用HTTP,TCP。等协议进行传输数据,而Web service只能用HTTP104.简要谈一下您对微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。WS主要是可利用HTTP,穿透防火墙。而Remoting可以利用TCP/IP,二进制传送提高效率。Web 服务是通过XML传输数据,是基于XML的,所以它是跨平台的,通过HTTP协议通信。而Remoting是基于。.net平台的,传输二进制数据,所以速度快,可以走多种协议。Web Service通过网络提供服务,信息的传送是XML数据包,是用SOAP封装的,是通过HTTP传输的。105.GC是什么? 为什么要有GC?GC是垃圾收集器。程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一: System.gc() Runtime.getRuntime().gc() 106.在.net中,配件的意思是?答:Assembly程序集。(dll.exe)(中间语言,源数据,资源,装配清单)107 .net中读写数据库需要用到那些类?他们的作用?答:DataSet:数据存储器。 DataCommand:执行语句命令。 DataAdapter:数据的集合,用语填充。108.什么是虚函数?什么是抽象函数?虚函数:没有实现的,可由子类继承并重写的函数。抽象函数:规定其非虚子类必须实现的函数,必须被重写。虚函数:在子类可以重新定义。抽象函数:不能实现.109.什么是强命名?RTTI:类型识别系统。Dll+版本号+文化背景+public key Token组合起来就可以生成强命名程序集110.与的区别是服务器端脚本块;是控件的属性被绑定到包含单个记录的表达式111. 对WebService的体会?答:特殊的web应用程序,http协议,80端口,按照soap协议xml协议进行封装,传递的是xml的信息好处:跨平台,无处不到缺点:速度慢,服务器压力大112向服务器发送请求有几种方式?客户端向SERVER请求有: (1)Post以表单形式提交 (2)Get 以QueryString形式提交113怎样理解静态变量?静态变量随类的诞生而诞生,随类的销毁而销毁。static 定义了静态变量,静态变量在类的实例中共享,不管有多少个实例,该类的静态变量始终只有一个。静态变量很适合做为全局变量使用。静态变量在一定程度上破坏了OO的完整性。114.你知道Remoting中的Singleton和Singlecall的区别吗? 答: SingleCall 每个传入的消息由新的对象实例提供服务。 Singleton 每个传入的消息由同一个对象实例提供服务。类(class)与结构(struct)的异同&值类型与引用类型有什么区别?相同点:class和struct都可以定义变量、方法;不同点:calss可以被实例化,属于引用类型,是分配在内存的堆上, 可以继承多态;struct属于值类型, 不能继承,不能多态.是分配在内存的栈上的. 编译器在默认构造函数中将所有变量初始化,所以程序员不能定义默认构造函数等;115.out和ref的区别out关键字输出型参数,指定给定的参数是一个输出参数,它也可以在函数结束时将值返回给调用的变量,out在方法调用时可以不用初始化,在返回时必须初始化。ref关键字引用型参数,声明为ref的参数变量传递的是指针指向实际内存地址的地址 区别: 1.把未赋值的变量用ref参数时非法的,而out可以. 2.在使用out时,该参数必须是看作还未赋值的,如果对一个已经赋值的变量使用out参数,则该值在函数调用的过程中,存储在该变量中的值会在执行时丢失.116简述 private、 protected、 public、 internal 修饰符的访问权限。 private : 私有成员, 在类的内部才可以访问。 protected : 保护成员,该类内部和继承类中可以访问。 public : 公共成员,完全公开,没有访问限制。 internal: 在同一命名空间内可以访问。 117Application、Session、Cookie、ViewState和Cache等变量的区别是什么?Application是公共的,所有人都能看到,所以可以用来做聊天室,session是私有的,每个客户端都存在一个不同的session 生存期正常是20分钟,也可以自己设定为1分钟或2个小时,它存在于服务器端cookie是保存在本机的文件,记录短小的信息,除非你让cookie过期,否则会一直存在。viewstate类似于asp中的hidden控件,用来记录页面中的控件的状态的,主要在页面间信息传递时用,cache是缓存,用来记录已经执行过的一些数据,比如读取数据库,目的是加速显示,减少服务器的负担,过期时间也是可以自己设定的。118什么是装箱和拆箱?答:从值类型接口转换到引用类型装箱。从引用类型转换到值类型拆箱。119.什么是受管制的代码?答:unsafe:非托管代码。不经过CLR运行。120.net Remoting 的工作原理是什么?答:服务器端向客户端发送一个进程编号,一个程序域编号,以确定对象的位置。121.接口是否可继承接口? 抽像类是否可实现(implements)接口? 抽像类是否可继承实体类(concrete class)?答:接口可以继承接口。抽像类可以实现(implements)接口,抽像类是否可继承实体类,但前提是实体类必须有明确的构造函数。122.是否可以继承String类?答:String类是final类故不可以继承。123.数组有没有length()这个方法? String有没有length()这个方法?答:数组没有length()这个方法,有length的属性。String有有length()这个方法124.Session有什么重大BUG,微软提出了什么方法加以解决?答:是iis中由于有进程回收机制,系统繁忙的话Session会丢失,可以用Sate server或SQL Server数据库的方式存储Session不过这种方式比较慢,而且无法捕获Session的END事件。125成员变量和成员函数前加static的作用?答:它们被称为常成员变量和
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 谐音课件教学课件
- 2025年度光伏发电设备场地租赁安全规范合同
- 2025年度能源勘探劳务派遣与环境保护合同
- 2025年度体育馆场地租赁及赛事宣传推广服务合同
- 2025电子商务跨境支付与结算合作服务合同
- 2025版全新船舶买卖居间责任合同下载
- 2025年新型云计算平台服务器采购合作协议
- 2025版茶山种植项目承包合同范本下载
- 2025代持房产合同监督与合规审查服务协议
- 2025年二手车鉴定评估买卖合同
- 硒鼓基础知识培训内容课件
- 子宫内膜病理课件
- T-CITSA 57-2025 高速公路基础设施主数据标准
- 质量风险预警系统-洞察及研究
- 2025-2026学年北师大版(2024)小学数学一年级上册教学计划及进度表
- 【星图研究院】2025中国RFID无源物联网产业白皮书
- 2025年湖北省中考数学真题试题(含答案解析)
- 交叠影响域理论视角下的幼儿体育“家园社”协同共育模式研究
- 新课标(水平三)体育与健康《篮球》大单元教学计划及配套教案(18课时)
- 大学生创新创业基础(创新创业课程)完整全套教学课件
- 织造工艺设计指导书
评论
0/150
提交评论