C#.NET概念问题1

1.       面向过程与面向对象

面向过程

    倾向于我们做一件事的流程,先做什么,然后做什么,最后做什么。更接近于机器的实际计算模型。

 

面向对象(Object-Oriented

    倾向于建立一个对象模型,它能够近似的反映应用领域内的实体之间的关系,其本质是更接近于一种人类认知事物所采用的哲学观的计算模型。

OO中,对象作为计算主体,拥有自己的名称,状态以及接受外界消息的接口。在对象模型中,产生新对象,旧对象销毁,发送消息,响应消息就构成OO计算模型的根本。

然而CPU并不理解对象和类,它依然在执着的先执行第一行代码,然后第二行…………所以它的执行过程依然是程序化的。

 

2.       什么是多态

同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性。多态性通过派生类重载基类中的虚函数型方法来实现。

 

3.       ThreadProcess之间有什么区别?.NET新引入了Application Domain的概念,这样他们三个之间有什么区别?引入了Application Domain会带来一些潜在的问题么

线程:为了减少进程切换和创建的开销,提高执行效率和节省资源

 进程:进程是为了完成用户任务所需要的程序的一次执行过程和为其分配资源的一个基本单位,是一个具有独立功能的程序段对某个数据集的一次执行活动。

线程和进程的区别:

      1、线程是进程的一部分,所以线程有的时候被称为是轻权进程或者轻量级进程。

      2、一个没有线程的进程是可以被看作单线程的,如果一个进程内拥有多个进程,进程的执行过程不是一条线(线程)的,而是多条线(线程)共同完成的。

      3、系统在运行的时候会为每个进程分配不同的内存区域,但是不会为线程分配内存(线程所使用的资源是它所属的进程的资源),线程组只能共享资源。那就是说,出了CPU之外(线程在运行的时候要占用CPU资源),计算机内部的软硬件资源的分配与线程无关,线程只能共享它所属进程的资源。

      4、与进程的控制表PCB相似,线程也有自己的控制表TCB,但是TCB中所保存的线程状态比PCB表中少多了。

      5、进程是系统所有资源分配时候的一个基本单位,拥有一个完整的虚拟空间地址,并不依赖线程而独立存在。

          进程与程序的区别:

  程序:是一组指令的集合,它是静态的实体,没有执行的含义。而进程是一个动态的实体,有自己的生命周期。一般说来,一个进程肯定与一个程序相对应,并且只有一个,但是一个程序可以有多个进程,或者一个进程都没有。除此之外,进程还有并发性和交往性。简单地说,进程是程序的一部分,程序运行的时候会产生进程。

总结:

      线程是进程的一部分,进程是程序的一部分。

 

4.       EXEDLL

现在的Windows中,exe dll 都是基于PE格式,exe 是通常的可执行文件,包含数据和代码,而 dll 是动态链接文件,也有可能是纯资源文件,只包含数据,不含程序代码。ddl 的目的之一就是提供能被许多不同的应用程序所使用的函数和资源。dll 中的函数和资源为软件开发提供了复用。它们是在运行时由磁盘物理映像载入被调用者的内存空间或共享内存空间执行。

 

5.     抽象类与接口

抽象类:一种不可以被实例化的类。抽象类中一般含有抽象方法,当然也可有具体实现。继承类只有实现过所有抽象类的抽象方法后才能被实例化。

接口:对类属性和行为的申明,客观规范,约定,多态

接口中所有方法必须是抽象的,并且不能指定方法的访问修饰符。抽象类中可以有方法的实现,也可以指定方法的访问修饰符

 

6.     constreadonly有什么区别?
const
关键字用来声明编译时常量,readonly用来声明运行时常量。

 

7.     SOAOOP

Service-Oriented Architecture 面向服务的体系结构

SOA是一个架构理念 OOP是一个编程理念

SOA是面向服务  OOP是面向对象

SOA不是语言是一种架构分类,这种架构是面向服务的 以一项项服务为单位来进行扩展,一项服务有自己的一套API 方法, 就像OOP是以object为单位,每一个类都有自己的属性和方法一样。SOA是抽象概念,具体实施可以用各种语言来实现 如java,.NET等等...

 

8.     ADO.NET相对于ADO等主要有什么改进?

(1)ado.net不依赖于ole db提供程序,而是使用.net托管提供的程序,

(2)不使用com

(3)不再支持动态游标和服务器端游标

(4)可以断开从connection而保留当前数据集可用

(5)强类型转换

(6)xml支持

ADO.NETADO相比,优势在于提供了数据集和数据适配器,有利于实现分布式处理,降低了对数据库服务器资源的消耗。

 

9.        ASP.NETASP主要有哪些不同

第一,多语言支持.ASP.NET支持VB.NET,C#JSCRIPT三种语言,用户可根据自己特长和实际需要进行选择,甚至可以用这些语言的组合来编程.第二,兼容性.ASP.NETASP完全兼容.第三,分离后台程序代码和网页前台界面.第四,ASP解释型,ASP.NET编译型

 

10.   大概描述一下ASPNET服务器控件的生命周期

1.初始化  2.加载视图状态 3.处理回发数据  4,加载 5.发送回发更改通知  

6.处理回发事件  7.预呈现   8.保存状态 9.呈现  10.处置 11.卸载

 

11.    Collection Collections的区别

Collection是集合类的上级接口,继承与他的接口主要有Set List.

Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。

 

12.==equals()区别

对于值类型,==表示对象的值相等,相等返回TRUE,不等返回FALSE

对于引用类型(除string外),判断是否对同一对象的引用,对于string类型,==判断字符串的值.

equals是判断是否对同一对象的引用

 

==操作比较的是两个变量的值是否相等,对于引用型变量表示的是两个变量在堆中存储的地址是否相同,即栈中的内容是否相同。

equals操作表示的两个变量是否是对同一个对象的引用,即堆中的内容是否相同。

 

 

 

 

12.   usingnew

using是引用命名空间和使用非托管资源

news是创建对象的实例和隐藏基类的方法

13.   触发器

触发器是一种特殊的存储过程,它不是有程序直接调用,而是由事件触发的,从而加强了数据的完整性约束和业务规则等

14.   WebService及作用

WebService:基于XML并利用SOAP协议实现跨平台信息传递的一种技术 

Web Service是构建互联网分布式系统的基本部件。Web Services 正成为企业应用集成(Enterprise Application Integration)的有效平台。Web Service 三个基本技术

1
Web Service通过标准通信协议,在互联网上发布有用的程序模块(以服务的方式),目前大部分是用SOAP来作通信协议。

2
Web Service提供一份详细的接口说明书,来帮助用户构建应用程序,这个接口说明书叫作WSDLWeb Service Description Language)。

3
。通常已发布的Web Service要注册到管理服务器,这样便于使用者查询和使用。这个是通过UDDIUniversal Discovery Description and Integration)来完成的。

Web Servcie最主要的优点是,使用不同程序和在不同系统平台上开发出来的程序,都可以相互通信。

 

15.  UDDIWSDL, SOAP

UDDIUniversal Description Discovery Integration 统一描述发现集成协议

WSDLWebService Description Language 是一个用来描述Web服务和说明如何与Web服务通信的XML语言。

SOAP:Simple Object Access Protocol 简单对象访问协议

16.  静态变量和非静态变量的区别?

静态变量使用:static 修饰符进行声明 在所属类被装载时创建 通过类进行访问 所属类的所有实例的同一静态变量都是同一个值. 非静态变量: 不带有 static 修饰符声明的变量称做非静态变量 在类被实例化时创建 通过对象进行访问 同一个类的不同实例的同一非静态变量可以是不同的值

17.  OSI七层模型

OSI是一种开发性通行系统互连参考模型。

从上到下:应用层,表示层,会话层,传输层,网络层,数据链路层,物理层

18. Asp.net   中在客户端触发服务端事件

a.   首先asp.net页框架会使用两个Hidden域来存放表示是哪个控件触发的事件,以及事件的参数

b.   服务端会生成一个jscript的方法来处理所有这些事件的发送,

c.   每个会引发服务端事件的控件都会在响应的客户端事件中调用上面的代码

d.   客户端触发事件后调用__doPostBack方法,将表示触发的控件源的eventTarget   和事件参数eventArgument分别付给两个隐藏域__EVENTTARGET__EVENTARGUMENT,然后提交Form,在服务端根据__EVENTTARGET__EVENTARGUMENT来判断是哪个控件的什么事件触发了。

19.AJAX原理及优势

XMLHttpRequest 对象是 Ajax 的核心,并已经成为通过 HTTP 异步传递 XML 数据的实际标准。异步交互意味着在发送请求之后浏览器可以继续处理页面中的事件。数据在后台进行传递,并且可以自动装入到页面中,无需进行页面刷新。

Ajax应用程序的优势在于:

1. 通过异步模式,提升了用户体验

2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用

3. Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值