。。”。 3) 接口可以被多重实现,抽象类只能被单一继承。 4) 抽象类更多的是定义在一系列紧密相关的类间,而接口大多数是关系疏松但都实现某一功能的类中。 5) 抽象类是从一系列相关对象中抽象出来的概念, 因此反映的是事物的内部共性;接口是为了满足外部调用而定义的一个功能约定, 因此反映的是事物的外部特性。 6) 接口基本上不具备继承的任何具体特点,它仅仅承诺了能够调用的方法。 7) 接口可以用于支持回调,而继承并不具备这个特点。 8) 抽象类实现的具体方法默认为虚的,但实现接口的类中的接口方法却默认为非虚的,当然您也可以声明为虚的。 9) 如果抽象类实现接口,则可以把接口中方法映射到抽象类中作为抽象方法而不必实现,而在抽象类的子类中实现接口中方法。 [.NET(C#)] 什么叫应用程序域: 1) 操作系统和运行库环境通常会在应用程序间提供某种形式的隔离。 2) 应用程序域为安全性、可靠性、版本控制以及卸载程序集提供了隔离边界。 3) 应用程序域可以理解为一种轻量级进程。起到安全的作用。占用资源小。 [.NET(C#)] 强类型: 为所有变量指定数据类型称为“强类型”。C#是强类型语言。 [.NET(C#)] 装箱和拆箱: 1) 从值类型接口转换到引用类型:装箱。 2) 从引用类型转换到值类型:拆箱。 [.NET(C#)] 托管代码: 使用基于公共语言运行库的语言编译器开发的代码称为托管代码;托管代码具有许多优点,例如:跨语言集成、跨语言异常处理、增强的安全性、版本控制和部署支持、简化的组件交互模型、调试和分析服务等。 [.NET(C#)] CTS:通用系统类型 Common Type System。 所有.NET语言共享这一类型系统,实现它们之间无缝的互操作。该方案还提供了语言之间的继承性。 [.NET(C#)] CLR:公共语言运行库 Common Language Runtime。 是一个运行时环境,它负责资源管理(内存分配和垃圾收集),并保证应用和底层操作系统之间必要的分离。 [.NET(C#)] CLS:公共语言规范 Common Language Specification 可以保证C#组件与其他语言组件间的互操作性。 [.NET(C#)] 委托: 1) 委托是一种引用方法的类型。 2) 委托类似于 C++ 函数指针,但它是类型安全的。 3) 委托允许将方法作为参数进行传递。 4) 委托可用于定义回调方法。 [.NET(C#)] 活动目录的作用: 1) Active Directory存储了有关网络对象的信息,并且让管理员和用户能够轻松地查找和使用这些信息。 2) Active Directory使用了一种结构化的数据存储方式,并以此作为基础对目录信息进行合乎逻辑的分层组织。 [.NET(C#)] 在.NET中,配件的意思: 程序集(中间语言,源数据,资源,装配清单)。 [.NET(C#)] UDDI、WSDL的意义及其作用: 1) UDDI(Universal Description, Discovery and Integration):通用描述、发现与集成服务;是一种目录服务,企业可以使用它对 Web services 进行注册和搜索。 2) WSDL(Web Services Description Language):是一个用来描述Web服务和说明如何与Web服务通信的XML语言。 [.NET(C#)] 值类型和引用类型的区别: 1) 值类型通常被分配在栈上,它的变量直接包含变量的实例,使用效率比较高。 2) 引用类型分配在托管堆上,引用类型的变量通常包含一个指向实例的指针,变量通过该指针来引用实例。 3) 一个是值COPY,一个是地址COPY。 值类型 引用类型 内存分配地点 分配在栈中 分配在堆中 效率 效率高,不需要地址转换 效率低,需要进行地址转换 内存回收 使用完后,立即回收 使用完后,不是立即回收,等待GC回收 赋值操作 进行复制,创建一个同值新对象 只是对原有对象的引用 函数参数与返回值 是对象的复制 是原有对象的引用,并不产生新的对象 类型扩展 不易扩展 容易扩展,方便与类型扩展 [.NET(C#)] ASP.NET的身份验证方式: Windows 身份验证提供程序: 提供有关如何将 Windows 身份验证与 Microsoft Internet 信息服务 (IIS) 身份验证,结合使用来确保 ASP.NET 应用程序安全的信息。 Forms 身份验证提供程序: 提供有关如何使用您自己的代码创建应用程序特定的登录窗体并执行身份验证的信息。 使用 Forms 身份验证的一种简便方法是使用 ASP.NET 成员资格和 ASP.NET 登录控件,它们一起提供了一种只需少量或无需代码就可以收集、验证和管理用户凭据的方法。 Passport 身份验证提供程序 提供有关由 Microsoft 提供的集中身份验证服务的信息,该服务为成员站点提供单一登录和核心配置。 [.NET(C#)] GC是什么 为什么要有GC? GC是控制系统垃圾回收器(一种自动回收未使用内存的服务)。 当使用可用内存不能满足内存请求时,垃圾回收会自动进行。 调用方法:GC.Collect(); [.NET(C#)] SOAP及其应用: SOAP(Simple Object Access Protocol )简单对象访问协议。 1) 是一种轻量的、简单的、基于 XML 的协议,它被设计成在 WEB 上交换结构化的和固化的信息。 2) SOAP 可以和现存的许多因特网协议和格式结合使用,包括超文本传输协议( HTTP),简单邮件传输协议(SMTP),多用途网际邮件扩充协议(MIME)。 3) 它还支持从消息系统到远程过程调用(RPC)等大量的应用程序。 [.NET(C#)] .NET中的垃圾回收机制: .NET Framework 的垃圾回收器管理应用程序的内存分配和释放。每次您使用 new 运算符创建对象时,运行库都从托管堆为该对象分配内存。只要托管堆中有地址空间可用,运行库就会继续为新对象分配空间。但是,内存不是无限大的。最终,垃圾回收器必须执行回收以释放一些内存。垃圾回收器优化引擎根据正在进行的分配情况确定执行回收的最佳时间。当垃圾回收器执行回收时,它检查托管堆中不再被应用程序使用的对象并执行必要的操作来回收它们占用的内存。 [.NET(C#)] ASP.NET 页面之间传递值的几种方式,与各自的优缺点: 1) 使用QueryString变量:Response.Redirect(字符串); 简单,显示于地址栏,长度有限。 2) 使用Session变量: 简单;但易丢失。 3) 使用Application 变量:全局;易被误操做。 4) 使用Server.Transfer:可以传递各种数据类型的值;显示在地址栏。 5) 使用Cookie变量:使用简单;存在客户端可能被伪造。 [.NET(C#)] 索引器: 索引器允许类或结构的实例按照与数组相同的方式进行索引。索引器类似于属性,不同之处在于它们的访问器采用参数。可以用任意类型索引。 1) 索引器使得对象可按照与数组相似的方法进行索引。 2) get 访问器返回值。set 访问器分配值。 3) this 关键字用于定义索引器。 4) value 关键字用于定义由 set 索引器分配的值。 5) 索引器不必根据整数值进行索引,由您决定如何定义特定的查找机制。 6) 索引器可被重载。 7) 索引器可以有多个形参,例如当访问二维数组时。 [.NET(C#)] 进程和线程的区别: 1) 进程是系统进行资源分配和调度的单位。 2) 线程是CPU调度和分派的单位。 3) 一个进程可以有多个线程,这些线 |