没有合适的资源?快使用搜索试试~ 我知道了~
NET软件工程师笔试题汇总(1).docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 69 浏览量
2023-09-22
13:18:38
上传
评论
收藏 64KB DOCX 举报
温馨提示
试读
50页
NET软件工程师笔试题汇总(1).docx
资源推荐
资源详情
资源评论
1.面向对象的思想主要包括什么? 奇乐滋 文库含有大量你喜欢的资料,赶快来看看那吧
答:任何事物都可以理解为对象,其主要特征: 继承。封装。多态。特点:代码好维护,安全,
隐藏信息
2.什么是 ASP.net 中的用户控件
答:扩展名为*.ascx,跟*.aspx 在结构上相似,是指页面中加载的功能块,只是用户控件不能单独作
为页面运行,必须嵌入到*.aspx 页面或其它用户控件中使用。
3.什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是
重载?CTS、CLS 和 CLR 分别作何解释?
答:应用程序域为安全性、可靠性、版本控制以及卸载程序集提供了隔离边界。应用程序域通常
由运行库宿主创建,运行库宿主负责在运行应用程序之前引导公共语言运行库。应用程序域提供
了一个更安全、用途更广的处理单元,公共语言运行库可使用该单元提供应用程序之间的隔离。
托管代码为使用基于公共语言运行库的语言编译器开发的代码称为托管代码;托管代码具有许多
优点,例如:跨语言集成、跨语言异常处理、增强的安全性、版本控制和部署支持、简化的组件
交互模型、调试和分析服务等。
装箱和拆箱使值类型能够被视为对象。对值类型装箱将把该值类型打包到 Object 引用类型的一
个实例中。这使得值类型可以存储于垃圾回收堆中。拆箱将从对象中提取值类型。
重载:每个类型成员都有一个唯一的签名。方法签名由方法名称和一个参数列表(方法的参数的
顺序和类型)组成。只要签名不同,就可以在一种类型内定义具有相同名称的多种方法。当定义
两种或多种具有相同名称的方法时,就称作重载。
CTS 通用类型系统 (common type system):一种确定公共语言运行库如何定义、使用和管理类型
的规范。
CLR 公共语言运行库:.NET Framework 提供了一个称为公共语言运行库的运行时环境,它运行
代码并提供使开发过程更轻松的服务。
CLS 公共语言规范:要和其他对象完全交互,而不管这些对象是以何种语言实现的,对象必须只
向调用方公开那些它们必须与之互用的所有语言的通用功能。为此定义了公共语言规范 (CLS),
它是许多应用程序所需的一套基本语言功能。
强类型:C# 是强类型语言;因此每个变量和对象都必须具有声明类型。
4.列举一下你所了解的 XML 技术及其应用
答:保存配置,站与站之间的交流,WEB SERVICE。以及与数据库的数据交互等地方都要用它.
5.值类型和引用类型的区别?
答:基于值类型的变量直接包含值。将一个值类型变量赋给另一个值类型变量时,将复制包含的
值。这与引用类型变量的赋值不同,引用类型变量的赋值只复制对对象的引用,而不复制对象本
身。
所有的值类型均隐式派生自 System.ValueType。
与引用类型不同,从值类型不可能派生出新的类型。但与引用类型相同的是,结构也可以实现接
口。
与引用类型不同,值类型不可能包含 null 值。然而,可空类型功能允许将 null 赋给值类型。
每种值类型均有一个隐式的默认构造函数来初始化该类型的默认值。
值类型主要由两类组成:结构、枚举
结构分为以下几类:Numeric(数值)类型、整型、浮点型、decimal、bool、用户定义的结构。
引用类型的变量又称为对象,可存储对实际数据的引用。声明引用类型的关键字:class、
interface、delegate、内置引用类型: object、strin
6.ADO.net 中常用的对象有哪些?分别描述一下。
答:
Connection 打开数据库连接
Command 执行数据库命令
DataAdapter 连接数据,执行数据库命令,填充 DataSet
DataSet 数据在内存中的缓存,数据结构
DataReader 只读向前的读取数据库
7.如何理解委托?
答:
相当于函数指针,定义了委托就可以在不调用原方法名称的情况下调用那个方法.
委托具有以下特点:
委托类似于 C++ 函数指针,但它是类型安全的。
委托允许将方法作为参数进行传递。
委托可用于定义回调方法。
委托可以链接在一起;例如,可以对一个事件调用多个方法。
方法不需要与委托签名精确匹配。有关更多信息,请参见协变和逆变。
C# 2.0 版引入了匿名方法的概念,此类方法允许将代码块作为参数传递,以代替单独定义的方
法。
8.C#中的接口和类有什么异同。
答:异:不能直接实例化接口。接口不包含方法的实现。接口、类和结构可从多个接口继承。但
是 C# 只支持单继承:类只能从一个基类继承实现。类定义可在不同的源文件之间进行拆分。
同:接口、类和结构可从多个接口继承。接口类似于抽象基类:继承接口的任何非抽象类型都必
须实现接口的所有成员。接口可以包含事件、索引器、方法和属性。一个类可以实现多个接口。
9.UDP 连接和 TCP 连接的异同。
答:前者只管传,不管数据到不到,无须建立连接.后者保证传输的数据准确,须要连结.
10.ASP.net 的身份验证方式有哪些?分别是什么原理?
答:Windows 身份验证提供程序:提供有关如何将 Windows 身份验证与 Microsoft Internet 信息
服务 (IIS) 身份验证结合使用来确保 ASP.NET 应用程序安全的信息。
Forms 身份验证提供程序:提供有关如何使用您自己的代码创建应用程序特定的登录窗体并执
行身份验证的信息。使用 Forms 身份验证的一种简便方法是使用 ASP.NET 成员资格和 ASP.NET
登录控件,它们一起提供了一种只需少量或无需代码就可以收集、验证和管理用户凭据的方法。
Passport 身份验证提供程序:提供有关由 Microsoft 提供的集中身份验证服务的信息,该服务为
成员站点提供单一登录和核心配置
11.进程和线程分别怎么理解?
答:进程和线程都是由操作系统所体会的程序运行的基本单元,系统利用该基本单元实现系统对
应用的并发性。进程和线程的区别在于:
简而言之,一个程序至少有一个进程,一个进程至少有一个线程.
线程的划分尺度小于进程,使得多线程程序的并发性高。
另外,进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的
运行效率。
线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口、顺序执行序列
和程序的出口。但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执
行控制。
从逻辑角度来看,多线程的意义在于一个应用程序中,有多个执行部分可以同时执行。但操作系
统并没有将多个线程看做多个独立的应用,来实现进程的调度和管理以及资源分配。这就是进程
和线程的重要区别。
进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配
和调度的一个独立单位.
线程是进程的一个实体,是 CPU 调度和分派的基本单位,它是比进程更小的能独立运行的基本单
位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄
存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.
一个线程可以创建和撤销另一个线程;同一个进程中的多个线程之间可以并发执行.
12.什么是 code-Behind 技术。
答:代码分离,这是个明智的东西,像 ASP 这样混成一堆很不爽.或者可以理解成 HTML 代码写在
前台,C#代码写在后台.当然前台也有脚本,类的调用等,其实写在一起也是可以的.
13.解释一下 UDDI、WSDL 的意义及其作用。
答:
UDDI:统一描述、发现和集成协议(UDDI, Universal Description, Discovery and Integration)是一套
基于 Web 的、分布式的、为 Web 服务提供的信息注册中心的实现标准规范,同时也包含一组使
企业能将自身提供的 Web 服务注册以使得别的企业能够发现的访问协议的实现标准。UDDI 提
供了一组基于标准的规范用于描述和发现服务,还提供了一组基于因特网的实现。
WSDL:WSDL 描述 Web 服务的公共接口。这是一个基于 XML 的关于如何与 Web 服务通讯和使
用的服务描述;
14.什么是 SOAP,有哪些应用。
答:SOAP(Simple Object Access Protocol )简单对象访问协议是在分散或分布式的环境中交换
信息并执行远程过程调用的协议,是一个基于 XML 的协议。使用 SOAP,不用考虑任何特定的
传输协议(最常用的还是 HTTP 协议),可以允许任何类型的对象或代码,在任何平台上,以
任何一直语言相互通信。
SOAP 是一种轻量级协议,用于在分散型、分布式环境中交换结构化信息。 SOAP 利用 XML
技术定义一种可扩展的消息处理框架,它提供了一种可通过多种底层协议进行交换的消息结构。
这种框架的设计思想是要独立于任何一种特定的编程模型和其他特定实现的语义。
SOAP 定义了一种方法以便将 XML 消息从 A 点传送到 B 点。为此,它提供了一种基于 XML
且具有以下特性的消息处理框架:1) 可扩展,2) 可通过多种底层网络协议使用,3) 独立于编程
模型。
15.如何理解.net 中的垃圾回收机制。
答:.NET Framework 的垃圾回收器管理应用程序的内存分配和释放。每次您使用 new 运算符
创建对象时,运行库都从托管堆为该对象分配内存。只要托管堆中有地址空间可用,运行库就会
继续为新对象分配空间。但是,内存不是无限大的。最终,垃圾回收器必须执行回收以释放一些
内存。垃圾回收器优化引擎根据正在进行的分配情况确定执行回收的最佳时间。当垃圾回收器执
行回收时,它检查托管堆中不再被应用程序使用的对象并执行必要的操作来回收它们占用的内存。
16.常用的调用 webservice 方法有哪些?
答:SOAP 和 WSDL
17. 写出一条 Sql 语句: 取出表 A 中第 31 到第 40 记录(SQLServer, 以自动增长的 ID 作为主键,
注意:ID 可能不是连续的。)
解 1: select top 10 * from A where id not in (select top 30 id from A)
解 2: select top 10 * from A where id > (select max(id) from (select top 30 id from A )as A)
18.列举 ASP.NET 页面之间传递值的几种方式。
答:1.使用 QueryString, 如....?id=1; response.Redirect().... 2.使用 Session 变量 3.使用 Server.Transfer
4.使用 Application 变量 5.使用 Cookie 6. 写出程序的输出结果
19. 写出程序的输出结果
class Class1
{
private string str = "Class1.str";
private int i = 0;
static void StringConvert(string str)
{
str = "string being converted.";
}
static void StringConvert(Class1 c)
{
c.str = "string being converted.";
}
static void Add(int i)
{
i++;
}
static void AddWithRef(ref int i)
{
i++;
}
static void Main()
{
int i1 = 10;
int i2 = 20;
string str = "str";
Class1 c = new Class1();
Add(i1);
AddWithRef(ref i2);
Add(c.i);
StringConvert(str);
StringConvert(c);
Console.WriteLine(i1);
Console.WriteLine(i2);
Console.WriteLine(c.i);
Console.WriteLine(str);
剩余49页未读,继续阅读
资源评论
南抖北快东卫
- 粉丝: 70
- 资源: 5584
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功