【Asp.net精品源码栏目提醒】:网学会员Asp.net精品源码为您提供【精品】Net工程师必懂笔试基础题 - 大学课件参考,解决您在【精品】Net工程师必懂笔试基础题 - 大学课件学习中工作中的难题,参考学习。
1.面向对象的思想主要包括什么?继承多态封装●封装:用抽象的数据类型将数据和基于数据的操作封装在一起,数据被保护在抽象数据类型内部。
●继承:子类拥有父类的所有数据和操作。
●多态:一个程序中同名的不同方法共存的情况。
有两种形式的多态–重载与重写。
2.什么是
ASP.net 中的用户控件用户控件就是.ascx 扩展名的东西喽可以拖到不同的页面中调用以节省代码.比如登陆可能在多个页面上有就可以做成用户控件但是有一个问题就是用户控件拖到不同级别的目录下后里面的图片等的相对路径会变得不准确需要自已写方法调整.问这样的问题一般是迷惑你.因为新手还是分不清楚用户控件和服务器控件也称自定义控件..用户控件一般用在内容多为静态或者少许会改变的情况下..用的比较大..类似 ASP 中的 include..但是功能要强大的多..在 C#中,string str null 与 string str “”的区别。
答:string str null 是不给他分配内存空间而 string str quotquot 给它分配长度为空字符串的内存空间请详述在 dotnet 中类class与结构struct的异同Class 可以被实例化属于引用类型是分配在内存的堆上的Struct 属于值类型是分配在内存的栈上的.DataReader 和 DataSet 的异同DataReader 和 DataSet 最大的区别在于DataReader 使用时始终占用SqlConnection在线操作数据库..任何对 SqlConnection 的操作都会引发DataReader 的异常..因为 DataReader 每次只在内存中加载一条数据所以占用的内存是很小的..因为 DataReader 的特殊性和高性能.所以DataReader 是只进的..你读了第一条后就不能再去读取第一条了..DataSet 则是将数据一次性加载在内存中.抛弃数据库连接..读取完毕即放弃数据库连接..因为 DataSet 将数据全部加载在内存中.所以比较消耗内存...但是确比 DataReader 要灵活..可以动态的添加行列数据.对数据库进行回传更新操作.8.C中的接口和类有什么异同。
接口和类都是类,不同的事,接口只包含方法或属性的声明,不包含具体实现方法的代码,接口可以实现多继承,而类只能是单继承,继承接口的类必须实现接口中声明的方法或属性。
接口主要定义一种规范,统一调用方法,在大型项目中接口正发挥日益重要的作用类是方法功能的实现和集合接口是规范类.约束类.接口是可以多继承类只有单继承.接口强调了你必须实现而没有具本实现的方法和虚类有点相似Override 与重载有什么区别?一个是重写父类函数,一个是同一个函数的几种形式触发器的作用触发器可以查询其它表,而且可以包含复杂的 SQL 语句。
它们主要用于强制复杂的业务规则或要求。
触发器还有助于强制引用完整性,以便在添加、更新或删除表中的行时保留表之间已定义的关系。
保证数据库操作变更能接到通知和 有什么区别?表示绑定的数据源是服务器端代码块常见的设计模式抽象工厂模式、适配器模式、外观模式 command 命令模式桥接模式组合模式装饰模式状态模式备忘录模式等。
软件设计模式太多,就我的理解简单说一下最常见的 MVC 模式。
MVC 模式是 1996 年由 Buschmann 提出的: 模型(Model):就是封装数据和所有基于对这些数据的操作。
视图(View):就是封装的是对数据显示,即用户界面。
控制器(Control):就是封装外界作用于模型的操作和对数据流向的控制等。
3.什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS 和 CLR 分别作何解释?4.列举一下你所了解的 XML 技术及其应用5.值类型和引用类型的区别?写出 C的样例代码。
在 dotnet 中有两大类数据类型,即值类型和引用类型,值类型存贮在栈中,而引用类型存贮在动态的堆中,栈是先进先出的有系统管理的空间, 而堆是由应用程序控制的可随时申请和释放该空间,在 Donnet 中一般情况下有垃圾收集器处理,他们的不同导致在编程上的不同。
例: StringBuilder anew StringBuilder//将 StringBuilder 的一个首地址传给 aStringBuilder ba//将 StringBuilder 的一个首地址传给 bb.AppendquotmxhquotConsole.WriteLineaanullConsole.WriteLineb输出结果:mxhmxhquotanullquot的意思是:a 的引用置为空但此时 StringBuilder 的堆空间并没有被释放,因此在此之后,输出 b 时,仍然可以输出 mxh6.ADO.net 中常用的对象有哪些?分别描述一下。
7.如何理解委托?C 中的委托类似于 C 或 C 中的函数指针。
使用委托使程序员可以将方法引用封装在委托对象内。
然后可以将该委托对象传递给可调用所引用方法的代码,而不必在编译时知道将调用哪个方法。
C 或 C 中的函数指针 与不同,委托是面向对象、类型安全的,并且是安全的。
9.。
net 中读写数据库需要用到哪些类?他们的作用10.UDP 连接和 TCP 连接的异同。
11.
ASP.net 的身份验证方式有哪些?分别是什么原理?window 验证:为每个用户开启 window 帐号验证其身份.安全性较高.forms 验证:为每个登陆用户写入一个身份验证票据..在 web 使用最广的验证方式..灵活方便.12.进程和线程分别怎么理解?13.什么是 code-Behind 技术。
新建一个 VS.NET 下的项目..看到 ASPXRESX 和 CS 三个后缀的文件了吗这个就是代码分离.实现了 HTML 代码和服务器代码分离.方便代码编写和整理.14.活动目录的作用。
活动目录是 window2000 的最重要的功能.可以将用户信息全部集成起来登陆以后可以访问多个不同的网络服务...15..net 中读写 XML 的类都归属于哪些命名空间?System.XML 类16.解释一下 UDDI、WSDL 的意义及其作用。
17.什么是 SOAP有哪些应用。
simple object access protocal简单对象接受协议.以 xml 为基本编码结构建立在已有通信协议上如 http不过据说 ms 在搞最底层的架构在 tcp/ip上的 soap的一种规范是微软大力推广的 Web Service 使用的协议..18.如何部署一个
ASP.net 页面。
19.如何理解.net 中的垃圾回收机制。
如果发现内存不够则垃圾回收器将全部对象作为无效对象被回收对象然后先将全局变量static处于活动中的局部变量以及当前 CG 指针指向的对象放入一个表中.然后会搜索新列表中的对象所引用的对象.加入列表中其他没有被加入列表的对象都会被回收.20.常用的调用 webservice 方法有哪些?我一般用的是 WSDL..或者 web 引用..21 列举一下你所了解的 XML 技术及其应用.xml 可以用来做网页xslt xml 可以当作数据库 xml 可以用来保存对象的系列化xml 用于配置用于保存静态数据类型.接触 XML 最多的是 web Services..和 configC中 property 与 attribute 的区别,他们各有什么用处,这种机制的好处在哪里?一个是属性,用于存取类的字段,一个是特性,用来标识类,方法等的附加性质C可否对内存进行直接的操作?可以维护数据库的完整性、一致性、你喜欢用触发器还是自写业务逻辑?为什么触发器,性能好,事务性ADO。
NET 相对于 ADO 等主要有什么改进?新增 dataset 等,不需要随时保持连接,性能提高ASP。
NET 与 ASP 相比,主要有哪些进步?asp 解释型,aspx 编译型,性能提高,有利于保护
源码C中的委托是什么?事件是不是一种委托?委托是一种安全的函数指针,事件是一种消息机制你对 XMLHTTP、WEBSERVICE 了解吗?简单描述其特点、作用xmlhttp 可以主动获取远端 web 代码,类似 HttpWebRequest接口和抽象类有什么区别?你选择使用接口和抽象类的依据是什么?接口用于规范,抽象类用于共性。
存储过程和函数的区别存储过程是编译好的存储在数据库的操作,函数不用说了.事务是什么?具有原子性特点游标的作用?如何知道游标已经到了最后?指示当前记录的位置检查 NULL触发器分为事前触发和事后触发,这两种触发有和区别。
语句级触发和行级触发有何区别。
一个是操作前,一个是操作后请说明在.net 中常用的几种页面间传递参数的方法,并说出他们的优缺点。
sessionviewstate 简单,但易丢失application 全局cookie 简单,但可能不支持,可能被伪造input typequothiddenquot 简单,可能被伪造url 参数 简单,显示于地址栏,长度有限数据库 稳定,安全,但性能相对弱请说明.net 中的错误处理机制,并举例try catch final请说出强名的含义具有自己的 key,可以在 GAC 为公用请列出 c#中几种循环的方法,并指出他们的不同for wile foreach请指出.net 中所有类型的基类object请指出 GAC 的含义全局程序集缓存值类型与引用类型有什么区别?值和指针的区别怎样理解静态变量?所有实例公用一个的变量向服务器发送请求有几种方式?get post如果在一个 B/S 结构的系统中需要传递变量值,但是又不能使用 Session、Cookie、Application,您有几种方法进行处理?input typequotquoturl数据库用.net 做 B/S 结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层?三层,表现,逻辑,数据, 安全性,维护性软件开发过程一般有几个阶段?每个阶段的作用?需求分析,架构设计,代码编写,QA,部署通过超链接怎样传递中文参数?URLEncode URLDecode请编程遍历页面上所有 TextBox 控件并给它赋值为 string.Emptyforeach有哪几种方法可以实现一个类存取另外一个类的成员函数及属性并请举列来加以说明和分析.同一个名称控件直接,或者反射如果需记录类的实例个数该如何实现请写一个简单的类于以证明.const static int classNum0classNumA 类是 B 类的基类并且都有自己的构造析构函数请举例证明 B 类从实例化到消亡过程中构造析构函数的执行过程.构造先父后子,析够反之需要实现对一个字符串的处理首先将该字符串首尾的空格去掉如果字符串中间还有连续空格的话仅保留一个空格即允许字符串中间有多个空格但连续的空格数不可超过一个.string inputStrquot xx xx quotinputStrRegex.ReplaceinputStr.Trimquot quotquot quot在 c中 using 和 new 这两个关键字有什么意义,请写出你所知道的意义?using 指令 和语句 new 创建实例 new 隐藏基类中方法using 引入名称空间或者使用非托管资源new 新建实例或者隐藏父类方法谈谈类和结构的区别?类是引用类型、结构是值类型什么叫做 SQL 注入,如何防止?请举例说明。
利用 sql 关键字对网站进行攻击。
过滤关键字等下面这段代码输出什么?为什么?int i5int j5if Object.ReferenceEqualsijConsole.WriteLinequotEqualquotelseConsole.WriteLinequotNot Equalquot写一个实现对一段字符串翻转的方法,附加一些条件,如其中包括“,”、“.”,对其设计测试用例inputStrinputStr.ToCharArray.Reverse.ToString什么是反射?动态获取程序集信息用 Singleton 如何写设计模式static 属性里面 new 构造函数 privateC中的垃圾回收机制是怎样的?三个 generation当每个 generation 内存满了的时候检查引用,无引用就回收内存什么是 Application Pool?Web 应用,类似 Thread Pool,提高并发性能链表和数组的区别,各有什么优缺点.一个可以动态增长,一个固定VB 中可以 Redim性能数组教好什么是友元函数?friendly 声明,可以访问 protect 级别方法什么是虚函数?可以被重写什么是抽象函数?必须被重写什么是内存泄漏,怎样最简单的方法判断被存泄漏 CC 中忘了释放内存,内存不会再次分配1SQL Server 的两种索引是何形式?索引的作用?索引的优缺点?cluster 和非 cluster加速查找,占用额外控件,维护索引耗费时间什么是 XML?可扩展标记语言,可以做配置文件,可以传输数据,可以存储数据简述 private、 protected、 public、 internal 修饰符的访问权限。
private : 私有成员 在类的内部才可以访问。
protected : 保护成员,该类内部和继承类中可以访问。
public : 公共成员,完全公开,没有访问限制。
internal: 在同一命名空间内可以访问。
进程和线程的区别进程是系统进行资源分配和调度的单位;线程是 CPU 调度和分派的单位,一个进程可以有多个线程,这些线程共享这个进程的资源。
成员变量和成员函数前加 static 的作用它们被称为常成员变量和常成员函数,又称为类成员变量和类成员函数。
分别用来反映类的状态。
比如类成员变量可以用来统计类实例的数量,类成员函数负责这种统计的动作。
malloc 和 new 的区别new 是 C的关键字。
malloc 在分配内存时必须按给出的字节分配,new可以按照对象的大小自动分配,并且能调用构造函数。
可以说 new 是对象的对象,而 malloc 不是。
本质上 new 分配内存时,还会在实际内存块的前后加上附加信息,所以 new 所使用的内存大小比 malloc 多。
堆和栈的区别栈:由编译器自动分配、释放。
在函数体中定义的变量通常在栈上。
堆:一般由程序员分配释放。
用 new、malloc 等分配内存函数分配得到的就是在堆上。
栈是机器系统提供的数据结构,而堆则是 C/C函数库提供的。
栈是系统提供的功能,特点是快速高效,缺点是有限制,数据不灵活;而栈是函数库提供的功能, 特点是灵活方便,数据适应面广泛,但是效率有一定降低。
栈是系统数据结构,对于进程/线程是唯一的;堆是函数库内部数据结构,不一定唯一。
不同堆分配的内存无法互相操作。
栈空间分静态分配和动态分配两种。
静态分配是编译器完成的,比如自动变量auto的分配。
动态分配由alloca 函数完成。
栈的动态分配无需释放是自动的,也就没有释放函数。
为可移植的程序起见, 栈的动态分配操作是不被鼓励的! 堆空间的分配总是动态的,虽然程序结束时所有的数据空间都会被释放回系统, 但是精确的申请内存/释放内存匹配是良好程序的基本要素。
在.Net 中,类 System.Web.UI.Page 可以被继承么?可以你觉得
ASP.NET 2.0(VS2005)和你以前使用的开发工具(.Net 1.0 或其他)有什么最大的区别?你在以前的平台上使用的哪些开发思想(pattern /architecture)可1
ASP.NET 2.0 把一些代码进行了封装打包所以相比 1.0 相同功能减少了很多代码.2 同时支持代码分离和页面嵌入服务器端代码两种模式以前 1.0 版本.NET提示帮助只有在分离的代码文件无法在页面嵌入服务器端代码获得帮助提示3 代码和设计界面切换的时候2.0 支持光标定位.这个我比较喜欢4 在绑定数据做表的分页.UPDATEDELETE等操作都可以可视化操作方便了初学者5 在
ASP.NET 中增加了 40 多个新的控件减少了工作量.net 的错误处理机制是什么.net 错误处理机制采用 try-gtcatch-gtfinally 结构,发生错误时,层层上抛,直到找到匹配的 Catch 为止。
重载与覆盖的区别1、方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系。
2、覆盖只能由一个方法,或只能由一对方法产生关系;方法的重载是多个方法之间的关系。
3、覆盖要求参数列表相同;重载要求参数列表不同。
4、覆盖关系中,调用那个方法体,是根据对象的类型(对象对应存储空间类型)来决定;重载关系,是根据调用时的实参表与形参表来选择方法体的。
简要谈一下您对微软.NET 构架下 remoting 和 webservice 两项技术的理解以及实际中的应用。
WS 主要是可利用 HTTP,穿透防火墙。
而 Remoting 可以利用 TCP/IP,二进制传送提高效率。
C中的委托是什么?事件是不是一种委托?委托是一种安全的函数指针,事件是一种消息机制new 有几种用法第一种:new Class第二种:覆盖方法public new XXXX第三种:new 约束指定泛型类声明中的任何类型参数都必须有公共的无参数构造函数。
如何把一个 array 复制到 arrayList 里foreach object o in array arrayList.Addodatagrid.datasouse 可以连接什么数据源datasetdatatabledataview IList概述反射和序列化反射:程序集包含模块,而模块包含类型,类型又包含成员。
反射则提供了封装程序集、模块和类型的对象。
您可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象中获取类型。
然后,可以调用类型的方法或访问其字段和属性序列化:序列化是将对象转换为容易传输的格式的过程。
例如,可以序列化一个对象,然后使用 HTTP 通过 Internet 在客户端和服务器之间传输该对象。
在另一端,反序列化将从该流重新构造对象。
概述 o/r mapping 的原理gt利用反射,配置 将类于数据库表映射用 sealed 修饰的类有什么特点sealed 修饰符用于防止从所修饰的类派生出其它类。
如果一个密封类被指定为其他类的基类,则会发生编译时错误。
密封类不能同时为抽象类。
sealed 修饰符主要用于防止非有意的派生,但是它还能促使某些运行时优化。
具体说来,由于密封类永远不会有任何派生类,所以对密封类的实例的虚拟函数成员的调用可以转换为非虚拟调用来处理。
什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS 和 CLR 分别作何解释?答:装箱就是把值类型转成引用类型从 MS IL 角度看好像是 boxing没记错的话是把值从堆栈转到堆中.拆箱相反重载就是指一个方法名同参数个数不同返回值可以相同的方法.CLR 是通用语言运行时其它的不清楚.如何理解委托?答:据说相当于函数指针定义了委托就可以在不调用原方法名称的情况下调用那个方法.委托具有以下特点:委托类似于 C 函数指针,但它是类型安全的。
委托允许将方法作为参数进行传递。
委托可用于定义回调方法。
委托可以链接在一起;例如,可以对一个事件调用多个方法。
方法不需要与委托签名精确匹配。
有关更多信息,请参见协变和逆变。
C 2.0 版引入了匿名方法的概念,此类方法允许将代码块作为参数传递,以代替单独定义的方法。
UDP 连接和 TCP 连接的异同。
前者只管传不管数据到不到无须建立连接.后者保证传输的数据准确须要连结.进程和线程分别怎么理解?进程是老子线程是儿子没有老子就没有儿子一个老子可以有多个儿子.一个儿子可以成为别人的儿子一个老子也可以为别的老子生儿子.什么是 SOAP有哪些应用。
答:SOAP(Simple Object Access Protocol )简单对象访问协议是在分散或分布式的环境中交换信息并执行远程过程调用的协议,是一个基于 XML 的协议。
使用 SOAP,不用考虑任何特定的传输协议(最常用的还是 HTTP 协议),可以允许任何类型的对象或代码,在任何平台上,以任何一直语言相互通信。
这种相互通信采用的是 XML 格式的消息.1. 填空: 1面向对象的语言具有___继承性、封装性、多态性。
2能用 foreach 遍历访问的对象需要实现 IEnumerable 接口或声明GetEnumerator 方法的类型3列举 ADO.net 中的五个主要对象Command、Connection、DataSet、DataAdapter、DataReader。
2. 不定项选择:1 以下叙述正确的是:A. 接口中可以有虚方法。
B. 一个类可以实现多个接口。
C. 接口不能被实例化。
D. 接口中可以包含已实现的方法。
2 从数据库读取记录,你可能用到的方法有:A. ExecuteNonQuery B. ExecuteScalarC. Fill D. ExecuteReader3. 简述 private、 protected、 public、 internal 修饰符的访问权限。
4. 写出一条 Sql 语句:取出表 A 中第 31 到第 40 记录(SQLServer 以自动增长的 ID 作为主键 注意:ID可能不是连续的。
)5 .列举
ASP.NET 页面之间传递值的几种方式。
三种比较常见的方式,一种是可以通过用 QueryString 来传送相应的值,再一种是通过 session 变量来传送相应的值,还有就是通过 Server.Transfer方法来实现1queryString2session3cookie4server.transfer5hidden control/view state6static member.7cache8application9DataBase10xml or other Files11XMLHTTP or Hidden iFrame/frame12Context.user.identity我正在做一个通用提示叶面, 所有叶面出现问题都要,传递几个变量字符串到同一个叶面 hitMsg.aspx 变量字符串包括提示语言, 即将跳转的叶面,跳转时间。
在 1-11 种方案中哪个更好些1queryString 的毛病是无法传递很长字符串,比如系统错误信息往往就一整个屏幕。
2session 的毛病是不能过多使用,依赖 Cookie容易丢失。
3cookie 的毛病是依赖客户端设置,不可靠。
4server.transfer 的毛病是接收叶面要为发送叶面准备好,只能定制专门一个叶面接受定制好的叶面。
不能是一个叶面接受任何叶面。
5hidden control/view state 只能传递本页。
除非特殊制作。
6static member.无法保证线程安全,可能会此处栽瓜他处得豆。
7cache 不适合使用一次就扔的变量。
8application 全局的,开销大。
9DataBase 全局固化的开销更大,除非做日志跟踪。
10xml or other Files 全局固化的开销大,除非做日志跟踪。
11XMLHTTP or Hidden iFrame/fr.
上一篇:
【精品】基于ASP销售系统设计与实现
下一篇:
加强企业管理力度 提升产品绿色竞争力