net面试基础知识(精选8篇)
net面试基础知识 第1篇
1、简述 private、protected、public、internal 修饰符的访问权限。
2、C#中的委托是什么?编写一个简单的委托代码。
3、C#中抽象类是什么?编写一个简单的抽象类代码。
4、例举ASP.NET页面之间传值的几种方式。
5、override与重载的区别
6、求以下表达式的值,写出你想的到其中一种实现方法:1-2+3-4+……..+m7、.NET中读写数据库需要用到那些类?他们的作用?
8、.NET异常处理机制?
9、写出下面题目的SQL语句
表1TB_BMBM 部门基本信息表
BMBM 部门编码
BMMC 部门名称
表2TB_BMJE部门月营业表,YY年
MM 月
BMBM 部门编码
JE部门营业额
A.要求写一条SQL语句查询有哪些部门年累计金额>1000的,注意要按 年YY,部门名称BMMC分组的累计金额查询
B.查出表1中有哪些部门不在(表2中季度金额>200的部门)中
10、用一条SQL语句 查询出每门课都大于80分的学生姓名
namekechengfenshu
张三语文81
张三数学75
李四语文76
李四数学90
王五语文81
王五数学100
王五英语90
net面试基础知识 第2篇
1:a=10,b=15,在不用第三方变量的前提下,把a,b的值互换
2:已知数组int[] max={6,5,2,9,7,4,0};用快速排序算法按降序对其进行排列,并返回数组
3:请简述面向对象的多态的特性及意义!
4:session喜欢丢值且占内存,Cookis不安全,请问用什么办法代替这两种原始的方法
5:对数据的并发采用什么办法进行处理较好。
6:已知Oracle数据库有GD和ZS两个数据库,GD数据库v_s表有数据写入时,从v_s表中提取最新数据到ZS数据库的D_E表中。请问用什么办法解决这一问题?如果又碰到不能互访的问题时,又用什么办法解决?
7:已知Oracle数据库a,b
现在在a用户权限下,访问b数据库sql语句为select a.* From b a,请改正这一句Sql的写法
8:当对数据库进行海量级的数据插入时,数据库出现报错,错误原因可能有哪些,以你的经验谈谈你的解决办法
9:算法分析
AH 0625 12 44 01 CAD001
AH 20060625 12 44 01 CAD001
AH 20060625 13 44 02 CAD001
AH 20060625 14 44 03 CAD001
说明:第二列表示日期,第三列表示温度,第四列表示水位,第五列表示流量,第6列表示水位测站编码,每一列表示一个字段
很明显第一条数据和第二条数据重复,然数据表中有主键和外键的约束,是不允许有重复的数据存在的,请构造算法将重复的数据Del掉
10:javascript算法
已知a,b,现在点鼠标a会向b游动,鼠标停,a会停下来
请实现“跑步算法”
1、答案
a=a+b;
b=a-b;
a=a-b;
还有变态要求,需要代码最短呢。有两个结果:
1) a^=b^(b^=a^b); // 13个字节
2) a=b+(b=a)*0; // 11个字节
2、答案(如果不限定算法,其实可以直接用Array.Sort方法的)
public class TestQuickSort {
private int[] array = null;
private void quickSort(int lowest, int highest) {
if (array == null || lowest < 0 || lowest >= highest
|| highest >= array.length) {
return;
}
int low = lowest;
int high = highest;
int key = low++;
for (; low <= high;) {
if (key < high) {
if (array[key] >array[high]) {
array[high] = array[key] + (array[key] = array[high]) * 0;
key = high;
}
high--;
}
if (key >low) {
if (array[key] < array[low]) {
array[low] = array[key] + (array[key] = array[low]) * 0;
key = low;
}
low++;
}
}
quickSort(lowest, key - 1);
quickSort(key + 1, highest);
}
/**
* @param args
*/
public static void main(String[] args) {
TestQuickSort test = new TestQuickSort();
int[] array = {6,5,2,9,7,4,0};
test.array = array;
test.quickSort(0, array.length - 1);
int length = test.array.length;
for (int i = 0; i < length; i++) {
System.out.println(test.array[i]);
}
}
}
不要用冒泡排序法很慢,选择排序好些,但题意是快速排序算法
快速排序算法的基本思想:
快速排序的基本思想是基于分治策略的。对于输入的子序列ap..ar,如果规模足够小则直接进行排序,否则分三步处理:
分解(Divide):将输入的序列ap..ar划分成两个非空子序列ap..aq和aq+1..ar,使ap..aq中任一元素的值不大于aq+1..ar中任一元素的值。
递归求解(Conquer):通过递归调用快速排序算法分别对ap..aq和aq+1..ar进行排序。
合并(Merge):由于对分解出的两个子序列的排序是就地进行的,所以在ap..aq和aq+1..ar都排好序后不需要执行任何计算ap..ar就已排好序。
这个解决流程是符合分治法的基本步骤的。因此,快速排序法是分治法的经典应用实例之一。
算法Quick_Sort的实现:
Pascal实现:
Procedure Quick_Sort(p,r:TPosition;var L:TList); {快速排序}
var
q:TPosition;
begin
if L[p..r]足够小 then Sort(p,r,L) {若L[p..r]足够小则直接对L[p..r]排序}
else
begin
q:=Partition(p,r,L); {将L[p..r]分解为L[p..q]和L[q+1..r]两部分}
Quick_Sort(p,q,L); {递归排序L[p..q]}
Quick_Sort(q+1,r,L); {递归排序L[q+1..r]}
end;
end;
3、答案
面向对象的编程使用了派生继承 以及虚函数机制.
一个本来指向基类的对象指针可以指向其派生类的.并访问从基类继承而来的成员变量和函数.
而虚函数是专门为这个特性设计的,这个函数在每个基类的派生类中都是同一个名字,但函数体却并不一定相同,派生类往往为实现自己的功能而修改这个虚函数.这样用一个指针就能够实现对多种不同的派生类的访问, 并实现其派生类的特定功能(代码 )....
4、答案
用VIEWSTATE
stateserver
5、答案
可以控制连接池的连接数量条件好的话 可以用负载平衡
6、答案
一个中型或大型公司往往由地理上分散的部门所组成,这些部门通常需要进行数据共享。针对这些共享数据,可以将其存储在某个站点上,需要的用户都从这个站点上存取。这种方案的优点是数据的一致性容易保证,但其缺点也是很突出的,那就是该站点的负载大、网络负载大,远程用户的数据响应迟缓。数据复制技术可以有效地解决这个问题,它通过将这些共享数据复制到位于不同地点的多个数据库中,从而实现数据的本地访问,减少了网络负荷,并提高了数据访问的性能,而且通过对数据库中的数据定期同步(通常是每天晚上),从而确保了所有的用户使用同样的、最新的数据。该技术适用于用户数量较大、地理分布较广、而且需要实时地访问相同数据的应用模式。
数据复制的概念及特点
1、数据复制的概念及分类
数据复制,就是将数据库中的数据拷贝到另外一个或多个不同的物理站点上,从而保持源数据库与目标数据库中指定数据的一致性。
按照数据复制的实时性,数据复制可分为同步数据复制和异步数据复制。同步数据复制是指将本地生产数据以完全同步的方式复制到异地,每一本地IO交易均需等待远程复制的完成方予以释放。异步数据复制则是指将本地生产数据以后台同步的方式复制到异地,每一本地IO交易均正常释放,无需等待远程复制的完成。同步复制实时性强,远端数据与本地数据完全同步。但这种方式受带宽影响较大,数据传输距离较短。异步复制不影响本地交易,传输距离长,但其数据比本地数据略有延迟。在异步复制环境中,对于所有应用最关键的就是要确保数据的一致性。
按照复制站点的类型,数据复制可分为多主控站点复制、物化视图复制及混合复制。多主控站点复制也称为对等站点复制,其中每个站点都是主控站点,都需要与其他站点进行信息交流,各站点之间是平等的。物化视图复制包含一个主控站点、一个或多个物化视图站点,
物化视图中的内容可以为目标主对象在某个时间点的全部拷贝或部分拷贝,其中目标主对象既可以是主控站点上的表也可以是物化视图站点上的主物化视图。混合复制包含多个主控站点和多个物化视图站点,是主控站点复制和物化视图复制的结合体,适合于复杂的业务情况。
2、数据复制的特点
数据复制通过在多个站点上建立备份,能够提高数据的安全性,同时也提高了数据的可用性,这是因为如果一个站点出现了问题,用户可以选择其他站点继续进行操作,应用系统还可继续运行,从而数据复制提供了容错保护机制。
然而数据复制最基本的功能是提高数据库的性能。它通过将远程数据库中的数据复制到本地,使得应用能够就近访问数据,从而降低网络传输负载,提高效率。而且在数据复制系统中,可以提供多个站点之间的负载平衡,让这几个用户使用这个服务器,另外几个用户可以
使用其他的服务器,以避免某些站点负载过重。
物化视图还提供了按子集进行复制,这样各站点就可只复制自己需要的数据,也能减轻网络的传输量。
数据复制的实现方法
在具体的实现之前,首先要做好设计与规划。这就需要细致分析具体的业务情况,设计出一套能够满足业务需要的方案。通常在设计过程中,需要确定出要建立的数据库站点,各站点的类型,需要复制的数据对象,以及同步方式、冲突解决方案等内容。
在设计完成之后,就可具体来实现数据复制,实现主要包括以下几步:
(1)创建复制站点
(2)创建组对象
(3)配置冲突解决方案
下面我们举一个例子来说明各步具体需要完成的工作。在这个例子中我们采用多主控站点复制方式,设有两个主控站点和两个共享数据表。两个主控站点分别为:处理站点(cl.world)和解释站点(js.wo rld);两个数据表为测区( survey)和测线( line)。
STEP1 创建复制站点
(1)首先以SYSTEM身份登陆主站点数据库cl.worldCONNECT system/manager@cl.world
(2)创建用户―复制管理员,并为该用户授权复制管理员负责复制站点的创建和管理,每个复制站点都必须创建复制管理员:
CREATE USER repadmin IDENTIFIED BY repadmin;
BEGIN
DBMS_REPCAT_ADMIN.GRANT_ADMIN_ANY_SCHEMA (username =>’repadmin’);
END;
(3)为本站点指定传播者
传播者负责将本地最新更新的数据传播到其他站点上:
BEGIN
DBMS_DEFER_SYS.REGISTER_PROPAGATOR (username =>’repadmin’);
END;
(4)为本站点指定接收者
接收者负责接收其他站点上的传播者传送过来的
关于ASP.NET的基础理论 第3篇
关键词:ASP.NET,数据库,Web网页
1 Web网页概述
Web网页是指Internet上按照HTML格式组织起来的文件,在通过Internet进行信息查询时以信息页面的形式出现,它包括图形、文字、声音和视像等信息。
Web的特点主要包括一下几点:
1)Web是图形化和易于导航的。
2)Web与平台无关。无论平台是什么,都可以通过Internet访问Web。
3)Web是分布式。图形、声音、视频等大量信息可以放在不同的特点,但在逻辑上是一体化的。
4)Web是动态的。信息的提供者经常对网站上的信息进行更新。
2静态网页和动态网页
根据Web网页的生成方式可以分为静态网页和动态网页。静态网页是指那些不能够接收用户输入信息的Web网页,其内容是静态的,唯一的响应就是接受鼠标单击超链接后显示所连接的网页。而动态网页是采用ASP、ASP.NET、JSP或PHP等语言动态生成的网页,只有在接到用户访问请求后才生成网页并传输到用户的浏览器。
2.1静态网页的执行过程
1)用户在客户端将HTML文件的网址输入到游览器的地址栏,请求一个HTML网页。
2)Web浏览器向Web服务器发送HTML文件请求,称为Request(请求)。
3)Web服务器找到该HTML文件,将其传送给用户浏览器,称为Response(响应)。
4)用户的Web浏览器解释HTML文件,结果在Web浏览器中显示。
2.2动态网页的执行过程
1)用户在客户端将一个网址输入到浏览器的地址栏,请求一个Web网页。
2)Web浏览器向Web服务器发送Web网页请求,称为Request(请求)。
3)Web服务器找到该ASP.NET文件对其进行解释并生成标准的HTML文件。
4)Web浏览器讲HTML文件传送给用户浏览器,称为Response(响应)。
3 ASP.NET的常用对象
Web应用程序运行的时候,ASP.NET中的一些常用的内置对象会提供丰富的功能,例如维护Web服务器活动状态,网页输入输出等。另外,通过配置Global.asax文件可以实现Web应用程序和会话的初始化设置等。
在ASP.中有几个内置对象是ASP技术中最重要的一部分。在ASP.NET中这些对象仍然存在,使用方法也大致相同,不同的是,这些内置对象是由.NET Framework中封装好的类来实现的。因为这些内置对象是在ASP.NET网页的初始化请求时自动创建的,是全局变量,不需要声明可以直接使用。
3.1 Page对象
Page对象其实就是c#中Web应用程序的.aspx文件,又称为网页,其作用是对整个网页的操作。该对象的Is Post Back属性当获取的布尔值是True时表示当前网页市委响应用户回传而加载的,为False时表示是首次加载和访问页面。
3.2 Response对象
该对象用于控制服务器发送给游览器的信息,其中Write方法可以将一个字符串写入HTTP响应输入流;Redirect方法是实现不同页面之间的跳转功能。
3.3 Request对象
该对象的主要功能是从客户端获取数据,该类使用Query String属性在网页之间传递数据。
3.4 Server对象
该对象提供了对服务器的方法和属性的访问。
3.5 Application对象
该对象提供对所有会话的应用程序范围的方法和事件的访问。
3.6 Session对象
用于存储特定用户的会话信息,退出应用程序或者关闭服务器会撤销会话,用户之间不能共享。
3.7 Cookie对象
用于设置和获取Cookie信息。一个Cookie是一段文本信息,能随着用户请求和网页在Web服务器和浏览器之间传递。
4站点导航控件
对于较大型的网站,可以利用ASP.NET站点导航空间实现站点导航。站点导航的作用就像城市道路的路标,使用户操作时清楚了解自己所在的位置。ASP.NET站点导航使用户能够将指向所有网页的链接存储在一个中央位置,并在列表中呈现这些链接,或用一个特定WEB服务器控件在每个网页上呈现导航菜单。
通过使用下列ASP.NET站点导航控件,可以轻松的在页面建立导航信息:
1)Tree View:此控件显示一个树状结构或菜单,让用户可以遍历访问站点中的不同页面。单击包含子节点的节点可将其展开或折叠。
2)Menu:此空间显示一个可展开的菜单,让用户可以遍历访问站点中的不同页面。将光标悬停在菜单上时,将展开包含子节点的节点。
3)Site Map Path:此控件显示导航路径
站点地图是一种以.sitemap为扩展名的标准XML文件,主要为站点导航控件提供站点层次结构信息,默认名为Web.sitemap。它是一个标准XML文件。其中,第一个标记用于标识版本和编码方式,site Map是站点地图根节点标记,包含若干个site Map Node子节点,一个site Map Node子节点又可以包含若干个site Map Node子节点,构成一种层次结构。
5 ADO.NET数据库访问技术
5.1 ADO.NET数据库概述
Actice X Data Object(ADO)是Microsoft开发的面向对象的数据访问库,目前已得到了广泛的应用,而ADO.NET则是ADO的后续技术。但ADO.NET并不是简单的ADO的简单升级,而是有非常大的改进。利用ADO.NET,程序员可以简单而快速地访问各种数据库。
5.2 ADO.NET数据库访问流程
ADO.NET的基本数据访问流程是:建立Connection对象,创建一个数据库链接→在建立连接的基础上可以使用Command对象对数据库发送查询、新增、修改和删除等命令→创建Data Adapter对象,从数据库中取得数据→创建Data Set对象,将Data Adapter对象填充到Data Set对象中→如果需要,可以重复操作,一个Data Set对象可以容纳多个数据合集→关闭数据库→在Data Set上进行所需要的操作。
参考文献
[1]马骏,等.ASP.NET网页设计与网站开发.北京:人民邮电出版社,2007.
[2]张跃廷,等.ASP.NET自学手册.北京:人民邮电出版社,2008.
net面试基础知识 第4篇
【摘要】计算机应用于考试,使得阅卷有可能由计算机自动完成,于是,自动阅卷技术成为研究的重点。在计算机上最容易实现的是选择题等客观题的测试和评阅。可以自动实现立即评阅,立即给出测试结果。
【关键词】在线考试系统;计算机基础课程;C/S模式;.NET;平台
一、研发计算机基础考试系统的意义
《计算机应用基础》是计算机应用课程体系中最基本的内容,该课程的特点是:
1、内容涉及面广。
2、实践操作性强。
从上述分析可以看出该课程内容主要是操作性的,如果仅仅通过笔试考核理论知识是不全面的,所以考试形式宜采用上机考试。
二、系统要实现的目标
① 对教师来说,系统应包括试卷管理、题库管理、成绩管理、基本资料管理等功能。试卷管理指:在学生考试时,由系统根据试卷规则自动组卷生成满足教师要求的试卷,而不用手工组卷。题库管理应允许教师可以根据教学需求对题库中的试题进行三种基本操作:添加新的考题、删除旧有考题、修改原有考题,其中试题类型包括判断题、单选题,Microsoft Office 操作题(包括 Word 文档操作、Excel 文档操作)、Web 操作、Windows 文件操作题和打字测试(中文,英文)。成绩管理是指:教师可以查看考生的考试成绩,管理基本资料(包括教师、学生资料的增、删、改以及个人资料修改)。
② 对学生来说,有如下要求:登陆、答题、交卷、评分、二次登陆。
三、本系统具备功能
1)可以创立电子题库,方便地实现试题的数字化管理。
2)按照科学的策略智能组卷,从而提高出卷效率。
3)具有操作性和交互性。
4)使考试和判卷更具规范性和合理性。
5)实现自动判卷和数据的有效保存。
6)具有较强的数据统计分析功能。
四、需求分析
经过对该课程的考试环节的分析,系统要能完成如下要求:
1、笔试与操作考试一体化对理论知识与操作技能的考试集中在计算机上完成,理论题采用选择题(单项选择)、判断题,以利用计算机自动评分。这样减少了笔试环节,节省了笔试、制卷、纸张、印刷等费用。
2、考试试卷随机化。采用题库技术,考试时从题量很大的题库中随机生成试卷,每位考生的试题均不一样,可以有效地防止试卷泄密、考生作弊等情况的出现。
3、评分自动化。考生在客户端计算机上提交试卷后,即由服务器端计算机自动完成试卷的评分,成绩可以马上评出。节省了教师的大量时间、精力,避免了考生长时间等分数、阅卷工作中的暗箱操作等情况的出现。
4、试卷分析科学化。在整次考试完成后,可以自动完成成绩的登记、统计、分析等工作,且可以做到精确地分析出考试中均方差、信度、效度等数据,可科学指导以后的教学工作。
五、开发语言ASP.NET的优势
系统采用Visual Studio 2012+Sql Server 2008为平台开发ASP.NET Web應用程序。ASP.NET是在服务器上运行的编译好的公共语言运行库代码,它可利用早期绑定、实时编译、本机优化和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。
(1)世界级的工具支持。ASP.NET框架补充了Visual Studio集成开发环境中的大量工具箱和设计器。WYSIWYG编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。
(2)可管理性。ASP.NET采用基于文本的分层配置系统,简化了将设置应用于服务器环境和Web应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地 管理工具帮助的情况下应用新设置。此“零本地管理”哲学也扩展到了ASP.NET框架应用程序的部署。只需将必要的文件复制到服务器,即可将 ASP.NET框架应用程序部署到服务器。不需要重新启动服务器,即使是在部署或替换运行的编译代码时。
(3)可缩放性和可用性。ASP.NET在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。另外,进程受到ASP.NET运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求。
(4)自定义性和扩展性。ASP.NET随附了一个设计周到的结构,它使开发人员可以在适当的级别“插入”代码。实际上,可以用自己编写的自定义组件扩展或替换吉林大学硕士学位论文ASP.NET运行库的任何子组件。
(5)威力和灵活性。由于ASP.NET基于公共语言运行库,因此Web应用程序开发人员可以利用整个平台的威力和灵活性。Microsoft.NET框架类库、消息处理 和数据访问解决方案都可从Web无缝访问。ASP.NET也和语言无关,所以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。另外,公共语言运 行库的交互性保证在迁移到ASP.NET时保留基于COM的开发中的现有投资。
(6)简易性。ASP.NET使执行常见任务变得轻易,从简单的窗体提交和客户端身份验证到部署和站点配置。例如,ASP.NET页框架使您可以生成将应用程序逻辑 和表示代码清楚分开的用户界面,和在类似Visual Basic的简单窗体处理模型中处理事件并不相同。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。
(7)安全性。借助内置的Windows身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。
六、考试系统设计目标
系统采用ASP.NET三层架构,实现基于B/S架构的中小型在线考试系统,可以从数据库中随机抽取试题,并且可以自动对考生的答案评分。系统主要实现以下目标:
(1)系统采用人机交互的方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠。
(2)实现从数据库中随机抽取试题。
(3)对用户输入的数据进行严格的数据检验,尽可能避免人为错误。
(4)实现对考试结果自动评分。
(5)实现教师和后台管理员对试题信息单独管理。
(6)系统最大限度地实现了易维护性和易操作性。
七、考试系统的数据库设计
通过对系统进行的需求分析、功能结构以及业务流程的确定,规划出系统使用的数据库实体对象及实体E-R图。主要的数据库表包括:考试科目信息表、考试记录信息表、试题信息表、考生信息表、教师信息表、管理员信息表等。
结束语:本系统的研发,可有效地解决传统考试的弊端,推动教学改革,实现无纸化考试,节省人力物力,确保了试卷的覆盖范围和正确性。在线考试系统从根本上解决了传统考试过程中的工作量大、效率低、反馈周期长、反馈能力弱、资源浪费等缺陷,成为现代教育技术发展与研究的方向。在我国高等职业教育中,采用网络化在线考试系统对学生进行考试测评是学校教学改革的一个新的尝试。通过在线考试系统有针对性地随机抽取试题库中的试题进行考试和评卷,可以客观、公正地评价学生的学习效果,更容易评测出学生的实际应用水平,对节省教学管理资源、提升教育评价的理念水平,以及提升人才培养模式等方面都具有一定的实际研究价值和使用价值。
参考文献:
[1]王素香,基于.NET 的计算机基础课程考试系统的设计与实现:[硕士学位论文];天津大学,2012年。
[2]乔显亮,基于 B/S 和 C/S 混合模式计算机基础考试系统的实现:[硕士学位论文],青岛大学,2010 年。
[3]张量,詹国华,一种基于 Internet 的远程考试系统,计算机应用,2010。
新出.net面试题 第5篇
(2)能用foreach遍历访问的对象需要实现 _ IEnumerable 接口或声明_ GetEnumerator 方法的类型。1.c#中的三元运算符是__?:__
2.当整数a赋值给一个object对象时,整数a将会被__装箱___?
3.类成员有__3__种可访问形式?
4.public static const int A=1;这段代码有错误么?是什么? const成员都是static所以应该去掉static
5.float f=-123.567F;
int i=(int)f;
i的值现在是_-123____?
6.利用operator声明且仅声明了==,有什么错误么?要同时修改Equale和GetHash ? 重载了“==” 就必须重载 “!=”
7.委托声明的关键字是___ delegate ___?
8.用sealed修饰的类有什么特点?不可被继承
9.在Asp.net中所有的自定义用户控件都必须继承自_ System.Web.UI.UserControl _______?
10.在.Net中所有可序列化的类都被标记为__[serializable]___?
11.在.Net托管代码中我们不用担心内存漏洞,这是因为有了_ gC __?
12.下面的代码中有什么错误吗?_ abstract override 是不可以一起修饰______
using System;
class A
{
public virtual void F(){
Console.WriteLine(“A.F”);
}
}
abstract class B:A
{
public abstract override void F();
}
13.当类T只声明了私有实例构造函数时,则在T的程序文本外部,_不可以_(可以 or 不可以)从T派生出新的类,_不可以_(可以 or 不可以)直接创建T的任何实例。
14.下面这段代码有错误么?case():不行 default;
switch (i){
case():
CaseZero();
break;
case 1:
CaseOne();
break;
case 2:
dufault;
CaseTwo();
break;
}
15.在.Net中,类System.Web.UI.page 可以被继承么?可以
2. 不定项选择:
(1) 以下叙述正确的是: B C
A. 接口中可以有虚方法。B. 一个类可以实现多个接口。C. 接口不能被实例化。 D. 接口中可以包含已实现的方法。
(2) 从数据库读取记录,你可能用到的方法有:B C D
A. ExecuteNonQuery B. ExecuteScalar C. Fill D. ExecuteReader
2.对于一个实现了IDisposable接口的类,以下哪些项可以执行与释放或重置非托管资源相关的应用程序定义的任务?(多选) ( ABC )
A.Close B.Dispose C.Finalize
D.using E.Quit
3.以下关于ref和out的描述哪些项是正确的?(多选) ( ACD )
A.使用ref参数,传递到ref参数的参数必须最先初始化。
B.使用out参数,传递到out参数的参数必须最先初始化。
C.使用ref参数,必须将参数作为ref参数显式传递到方法。
D.使用out参数,必须将参数作为out参数显式传递到方法。
1.在对SQL Server 数据库操作时应选用(A)。
a)SQL Server .NET Framework 数据提供程序;
b)OLE DB .NET Framework 数据提供程序;
c)ODBC .NET Framework 数据提供程序;
d)Oracle .NET Framework数据提供程序;
2.下列选项中,(C)是引用类型。
a)enum类型 b)struct类型c)string类型 d)int类型
3.关于ASp.NET中的代码隐藏文件的描述正确的是(C)
a)Web窗体页的程序的逻辑由代码组成,这些代码的创建用于与窗体交互。编程逻辑唯一与用户界面不同的文件中。该文件称作为“代码隐藏”文件,如果用C#创建,该文件将具有“.ascx.cs”扩展名。
b)项目中所有Web窗体页的代码隐藏文件都被编译成.EXE文件。
c)项目中所有的Web窗体页的代码隐藏文件都被编译成项目动态链接库(.dll)文件。
d)以上都不正确。
4.以下描述错误的是(A)
a)在C++中支持抽象类而在C#中不支持抽象类。
b)C++中可在头文件中声明类的成员而在Cpp文件中定义类的成员,在C#中没有头文件并且在同一处声明和定义类的成员。
c)在C#中可使用 new 修饰符显式隐藏从基类继承的成员。
d)在C#中要在派生类中重新定义基类的虚函数必须在前面加Override。
5.C#的数据类型有(B)[原文为D,有误]
a)值类型和调用类型; b)值类型和引用类型;c)引用类型和关系类型;d)关系类型和调用类型;
6.下列描述错误的是(D)
a)类不可以多重继承而接口可以;
b)抽象类自身可以定义成员而接口不可以;
c)抽象类和接口都不能被实例化;
d)一个类可以有多个基类和多个基接口;
7.在DOM中,装载一个XML文档的方法(B)[原文为D,有误]
a)save方法 b)load方法c)loadXML方法d)send方法
8.下列关于构造函数的描述正确的是(C)
a)构造函数可以声明返回类型。
b)构造函数不可以用private修饰
c)构造函数必须与类名相同
d)构造函数不能带参数
9.以下是一些C#中的枚举型的定义,其中错误的用法有()
a)public enum var1{ Mike = 100, Nike = 102, Jike }
b)public enum var1{ Mike = 100, Nike,Jike }
c)public enum var1{ Mike=-1 , Nike, Jike }
d)public enum var1{ Mike , Nike , Jike }
10.int[][] myArray3=new int[3][]{new int[3]{5,6,2},new int[5]{6,9,7,8,3},new int[2]{3,2}}; myArray3[2][2]的值是(D)。
a)9 b)2 c)6 d)越界
11.接口是一种引用类型,在接口中可以声明(A),但不可以声明公有的域或私有的成员变量。
a)方法、属性、索引器和事件;b)方法、属性信息、属性;c)索引器和字段; d)事件和字段;
12.ASp.NET框架中,服务器控件是为配合Web表单工作而专门设计的。服务器控件有两种类型,它们是(A )
a)HTML控件和Web控件b)HTML控件和XML控件c)XML控件和Web控件 d)HTML控件和IIS控件
13.ASp.NET中,在Web窗体页上注册一个用户控件,指定该控件的名称为”Mike”,正确的注册指令为( D)
a)
b)
c)
d)以上皆非
14.在ADO.NET中,对于Command对象的ExecuteNonQuery()方法和ExecuteReader()方法,下面叙述错误的是(C)。
a)、update、等操作的Sql语句主要用ExecuteNonQuery()方法来执行;
b)ExecuteNonQuery()方法返回执行Sql语句所影响的行数。
c)Select操作的Sql语句只能由ExecuteReader()方法来执行;
d)ExecuteReader()方法返回一个DataReder对象;
15.下列ASp.NET语句(b)正确地创建了一个与SQL Server 数据库的连接。
a)SqlConnection con1 = new Connection(“Data Source = localhost; Integrated Security = SSpI; Initial Catalog = myDB”);
b)SqlConnection con1 = new SqlConnection(“Data Source = localhost; Integrated Security = SSpI; Initial Catalog = myDB”);
c)SqlConnection con1 = new SqlConnection(Data Source = localhost; Integrated Security = SSpI; Initial Catalog = myDB);
d)SqlConnection con1 = new OleDbConnection(“Data Source = localhost; Integrated Security = SSpI; Initial Catalog = myDB”);
16.Winform中,关于ToolBar控件的属性和事件的描述不正确的是(D)。
a)Buttons属性表示ToolBar控件的所有工具栏按钮
b)ButtonSize属性表示ToolBar控件上的工具栏按钮的大小,如高度和宽度
c)DropDownArrows属性表明工具栏按钮(该按钮有一列值需要以下拉方式显示)旁边是否显示下箭头键
d)ButtonClick事件在用户单击工具栏任何地方时都会触发
17.在ADO.NET中执行一个存储过程时,如果要设置输出参数则必须同时设置参数的方向和(B ),必要时还要设置参数尺寸。
a)大小; b)上限; c)初始值; d)类型;
18.如果将窗体的FormBoderStyle设置为None,则( B)。
a)窗体没有边框并不能调整大小; b)窗体没有边框但能调整大小;
c)窗体有边框但不能调整大小; d)窗体是透明的;
19.如果要将窗体设置为透明的,则( B)
a)要将FormBoderStyle属性设置为None; b)要将Opacity属性设置为小于100%得值;
c)要将locked 属性设置为True; d)要将 Enabled属性设置为True;
20.下列关于C#中索引器理解正确的是(B/C )
a)索引器的参数必须是两个或两个以上 b)索引器的参数类型必须是整数型
c)索引器没有名字 d)以上皆非
21.下面描述错误的是( C/D)。
a)窗体也是控件; b)窗体也是类; c)控件是从窗体继承来的; d)窗体的父类是控件类;
22.要对注册表进行操作则必须包含( D)。
a)System.ComponentModel命名空间; b)System.Collections命名空间;
c)System.Threading命名空间; d)Microsoft.Win32命名空间;
23.要创建多文档应用程序,需要将窗体的(D )属性设为true。
a)DrawGrid; b)ShowInTaskbar; c)Enabled; d)IsMdiContainer;
24.如果设treeView1=new TreeView(),则treeView1.Nodes.Add(“根节点”)返回的是一个 ()类型的值。
a)TreeNode;
b)int;
c)string;
d)TreeView;
25.下面关于XML的描述错误的是(D)。
a)XML提供一种描述结构化数据的方法;
b)XML 是一种简单、与平台无关并被广泛采用的标准;
c)XML文档可承载各种信息;
d)XML只是为了生成结构化文档;
1.装箱、拆箱操作发生在: ( C)
A.类与对象之间 B.对象与对象之间
C.引用类型与值类型之间 D.引用类型与引用类型之间
2.用户类若想支持Foreach语句需要实现的接口是: (A )
A.IEnumerableB.IEnumerator
C.ICollectionD.ICollectData
3..Net Framework通过什么与COM组件进行交互操作?(C )
A.Side By SideB.Web Service
C.InteropD.pInvoke
4..Net依靠以下哪一项技术解决COM存在的Dll Hell问题的?(A )
A.Side By SideB.Interop
C.pInvokeD.COM+
5.装箱与拆箱操作是否是互逆的操作?(B )
A.是B.否
6.以下哪个是可以变长的数组?(D )
A.Array B.string[]
C.string[N] D.ArrayList
7.用户自定义异常类需要从以下哪个类继承:(A )
A.Exception B.CustomException
C.ApplicationException D.BaseException
8.以下代码段中能否编译通过?请给出理由。
try
{
}
catch(FileNotFoundException e1)
{
}
catch(Exception e2)
{
}
catch(IOException e3)
{
}
catch
{
.net面试自我介绍 第6篇
刚参加工作面对浩瀚的网络世界,当时如刘姥姥进大观园,什么都新奇,什么都想要,从网上下载很多源程序的代码,软件技术文档之类,恨不得把所有的好东西收集到手中,其实有些在他人看起来就是垃圾一堆。
当时觉得有了这些 “ 武林秘籍 ” ,成为高手指日可待。
最初参加工作由于自己工作努力有幸转为开发,加入项目组后我的习惯还是没有改,反而变本加厉,手中的资源更加多,上网的`时间更加频繁。
一次项目经理分配任务,觉得依靠手中的秘籍加上自己的 “ 聪明才智 ” 很快会完成,不料短短的时间,所有的一切变成了马奇诺防线。
解决问题很慢,思路不清晰,项目经理在对我施压的过程中教会了我终身难忘的一招,学会利用网络寻找要解决问题的答案,从此 google 成了我的最爱,关键字成了我变化的招数。
在软件测试工作中,他帮我解决了很多疑难问题,解答了很多令我迷惑的地方。
也是我帮助测试同行解决问题手段之一,很多软件测试新手,甚至老手都没有意识到自己手上就握有 “ 无敌秘籍 ” ,所以只要你耐心找,答案就在身边。
参加软件测试工作后,随着工作经验的增长自我感觉越来越好。在公司里也逐渐受到同事领导的重视,一次针对公司的新的软件功能进行测试的时候,像往常一样 “ 随手 ” 测试出了几个 bug ,然后 “ 仔细 ” 的填写了 bug 单(这个 bug 的现象已经出现了很多次了)。这时候测试经理走过来,重新复查了一下填写的 bug .他在重现我的 bug 的过程中,简化了我的输入变化, bug 神奇的又出现了,同样的现象,他关闭软件重新变化输入,扩展出 10 几个变化后,软件不动了,内存不断上升。终于他找到了产生软件的 bug 的原因,然后对我说 “ 寻找 bug 要准确定位,我们开发团队是一个整体,时间是等量的,时间不在你身上浪费,就是在他身上浪费。如果测试人员每次发现的 bug 描述不清楚,并且多个问题潜在的错误原因是一个,虽然操作可能稍微有些变化。
net程序员面试 第7篇
net程序员面试
1.String str=new String(“a”)和String str = “a”有什么区别? String str = “a”; 这个只是一个引用,内存中如果有“a“的话,str就指向它,如果没有才创建如后还用到”a“这个字符串的话并且是这样用: String str1 = ”a“; String str2 = ”a“; String str2 = ”a“; 这4个变量都共享一个字符串”a“ 而String str = new String(”a“);是根据”a“这个String对象再次构造一个String对象,将新构造出来的String对象的引用赋给str 2.判断字符串变量str是否为空的一下三种方法哪个性能更优 a、str==”“;b、str==String.Empty;c、str.Length==0;?答案是c; 3.string与String的区别 string、int是C#定义的类型,而String、Int32是.net类型即是CTS类型; string 是 .NET 框架中 System.String 的别名。string在编译的时候会转化为String类 4.虚方法(virtual )和抽象方法(abstract)的区别? 1:抽象方法仅有声明,而没有任何实现,如abstract someMethod;,虚方法却不能如此 virtual用于修饰方法、属性、索引器或事件声明,并使它们可以在派生类中被重写。 2:子类继承父类,可以对父类中的虚方法进行重写、覆盖、不处理三种处理(见5),对抽象方法却必须实现 5.子类对父类中虚方法的处理有重写(override)和覆盖(new),请说明它们的区别? 有父类ParentClass和子类ChildClass、以及父类的虚方法VirtualMethod。有如下程序段: ParentClass pc = new ChildClass();pc.VirtualMethod(...); 如果子类是重写(override)父类的.VirtualMethod,则上面的第二行语句将调用子类的该方法 如果子类是覆盖(new)父类的VirtualMethod,则上面的第二行语句将调用父类的该方法 6.抽象类(abstract)和接口(interface)的区别 抽象类可以有自己的实现,接口却仅有声明,可以有自己的静态数据字段; java和C#中可以实现多个接口,却只能继承一个抽象类(或者非抽象类)(单继承,和c++的多继承不同); 7.填空: (1)面向对象的语言具有 继承性、多态性、封装性。 (2)能用foreach遍历访问的对象需要实现 _IEnumerable___接口或声明_GetEnumerator_方法的类型。 (3)列举ADO.net中的五个主要对象 Connection,Command,DataReader,DataAdapter,DataSet connection 连接对象 command 命令对象,指示要执行的命令和存储过程! datareader是一个向前的只读的数据流。 dataadapter是功能强大的适陪器,支持增删改查的功能 dataset是一个数据级对象,相当与内存中的一张表或多张表 8.不定项选择: (1) 以下叙述正确的是:BC A. 接口中可以有虚方法。 B. 一个类可以实现多个接口。 C. 接口不能被实例化。 D. 接口中可以包含已实现的方法。 (2) 从数据库读取记录,你可能用到的方法有: BCD A. ExecuteNonQuery B. ExecuteScalar C. Fill D. ExecuteReader 9.简述 private、protected、public、internal 修饰符的访问权限。 A.Private:关键字是一个成员访问修饰符。私有访问是允许的最低访问级别。私有成员只有在声明它们的类和结构体中才是可访问的, 同一体中的嵌套类型也可以访问那些私有成员 B.Protected 关键字是一个成员访问修饰符。受保护成员在它的类中可访问并且可由派生类访问。有关 protected 与其他访问修饰符的比较,请参见可访问性级别,只有在通过派生类类型发生访问时,基类的受保护成员在派生类中才是可访问的 C.Internal关键字是类型和类型成员的访问修饰符。只有在同一程序集的文件中,内部类型或成员才是可访问的 D Protected Internal 它可以看作是Protected与Internal的并集,意思是:如果是继承关系,无论在不在同一程序集里都能访问;如果不是继承关系,那么只能在同一程序集内访问。 E.Public具有最高级别的访问权限,对访问成员没有限制。 10.写出一条Sql语句:取出表A中第31到第40记录(SQLServer, 以自动增长的ID作为主键, 注意:ID 可能不是连续的。)
net面试基础知识 第8篇
ADO.NET这个名字可以追溯到Active X Data Objects简称ADO, 这是用在之前的Microsoft技术中, 用来访问数据, 是一个广泛的类组。Microsoft为了要表明在NET编程环境下这个数据访问接口能优先使用, 因此命名为ADO.NET。
.NET平台定义了许多命名空间, 而ADO.NET就是这些命名空间的统称。它允许与本地的或远程的数据库进行交互。
用SQL Serverhttp://baike.baidu.com/view/9644.htm与XML这样一致的方式来存取资料来源, 以及透过ODBChttp://baike.baidu.com/view/239730.htm和OLE DBhttp://baike.baidu.com/view/41321.htm所公开的资料来源ADO.NET是允许的。将资料来源与资料共用, 以及提取、处理、加工其中的资料有机的连接起来, 都需要用ADO.NET来连接, 结合到消费者应用程序即可。
ADO.NET能把资料管理中的资料存取拆散成为多个可以分开使用或串联使用的不连续的元件, .NET Frameworkhttp://baike.baidu.com/view/18370.htm资料提供者也含概在ADO.NET中, 目的是用来获取结果, 执行操作命令和连接资料库。直接处理这些结果后、放入ADO.NET Data Set物件中, 实现在各层之间进行传递、与多个来源的资料结合, 或便于利用机器操作的形式公开给使用者。.NET Framework资料提供者与Data Set物件也分开使用也是可以的, 这样便于管理来自XML的资料或应用程序本机的资料。System.Xml.dll中的XML类别会与ADO.NET类别 (Class) 整合, ADO.NET类别位于System.Data.dll中。
一般在存取.NET应用程序中的资料时主要采用ADO.NET, 而不是ADO。因为ADO.NET可为撰写Managed程序码的开发人员类似于Active X Data Object (ADO) 提供原生的元件物件模型Component Object Model, COM) 开发人员的功能。
2 ADO.NET数据提供程序
ADO.NET没有提供单一的方式来和多个数据库管理系统 (DBMS) 进行通信, 而是提供了多种数据提供程序, 每种为某个DBMS进行优化。这种方法的好处是, 一是能以编程方式利用DBMS独有的特性, 二是能直接和基层的DBMS引擎进行连接而不需要为不同的DBMS做中间映射层。
简单来说, 数据提供程序是一组定义在用于和特定的数据源类型进行通信的命名空间内的一组类型。不管用哪种数据提供程序, 他们都有一系列类来提供核心功能, 表1列举了一些核心公告对象, 它们的基类 (都定义在System.Data.Common命名空间内) 和它们实现的以数据为中心的接口 (都定义在Systmen.Data命名空间内) 。
尽管这些类的命名对于不同的数据提供程序不尽相同 (比如Sql Connection和Oracle Connection, Odbc Connection和My Sql Connection) , 但是它们都从相对的基类继承并且实现相同的接口 (如IDb Connection) 。这样的话, 一旦掌握了一种数据提供程序的用法, 学习其他的数据提供程序就非常简单了。图1详细说明了.NET Framework数据提供者与Data Set之间的关联性。
3 结语
ADO.NET集合了所有代表数据容器对象的类, 这些类用于数据处理, 它完全不同于ADO, 不是以数据库为核心的ADO模型, 其特色是整体设计, 是一种新型的用于数据访问编程模型。
参考文献
[1]王宝祥.基于ADO.NET的数据库访问技术研究[J].计算机应用与软件, 2004 (2) .
[2]蒋薇, 赖青贵, 秦玲.基于ADO.NET的数据访问技术的研究和应用[J].微计算机信息, 2010 (10) .