当前位置:编程学习 > asp >>

.NET基础拾遗系列第三篇:.NET的基础知识

前言:
        回去看了自己写的一篇文章,结合现在.net面试的题目,我还是感觉头晕晕的,.net的基础知识很多,所以我觉得很有必要给初学者一个指引,其实也可以说是给我自己一个知识复习的机会,如果你是身经百战的.net高手,那请你飘过就可以了,如果我说的有错误的话,那请各位批评指正!之前写了两篇几个概念,我这一篇主要是说说.net开发当中的基础问题,每一个问题我尽量结合一个实例来说明,如果一下是我要说的内容:
.net的框架 
.net的命名空间
ASP和ASP.net对比
ado和ado.net区别
程序集和应用程序域
编译.net程序 
栈和堆
.net的垃圾收集机制
理解可终结对象和可处置对象
处理异常
 
.net框架:
      我们经常反复地提到.net这个概念,那么他到底是什么呢?.net是微软打造和极力推荐的核心技术,他就是希望技术可以实现用户在任何地方,任何时间,利用然和设备都可以访问的信息,文件和程序,他的核心内容之一就是搭建第三代互联网的平台,这个网络平台将打破不同的上网设备以及不同的操作系统,不同的网站以及各大机构之间的网络障碍,解决网站之间的协同合作问题,最大限度的实现资源共享.
       .net框架(.net frameword)主要的3个组成部分:
公共语言运行库(commom language runtime,CLR)
基础类库(base  class library)
asp.net, vb.net,c#等语言运行库
       公共语言运行库是.net框架的运行环境,在某种程度上,CLR与Java的虚拟机原理相同,他负责运行和维护用户编写的任何程序代码,包括内存管理,线程执行,代码执行,代码验证,编译以及其他系统的服务,举例说明.
      拿一张.ASPX格式的网页来说说这个执行过程
首先,当.ASPX格式的网页被第一次访问的时候,就会编译成一种中间语言(Microsoft Intermediate Language,MSIL),然后利用即时编译器(Just In Time,JIT)声称相应的机器代码以便执行;当网页再一次被访问的时候,就只需要有MSIL语言生成机器代码就可以了,但是如果源代码有改动,就需要重修编译为MSIL语言,然后再生成机器代码.
     基础类库是.net框架面向所有的.net程序员提供的一个工友的基础类库,该类库提供了上百个面向对象的类来提供从事数学计算,字符操作到数据库操作等各种复杂的功能,利用这些类用户可以快速地搭建起各种应用程序。
     类库中常见的类如下:
System:提供所有底层系统服务,包括输入输出,驱件驱动,文本处理
Data:提供数据处理操作
XML:提供了XML文件的出来操作
Web:提供用来完成用户界面和Web服务的任务,这个类是ASP.NET最常见的类
WindowForms:提供了传统的桌面应用程序的服务
Drawing:提供创建图形的功能
...................................
     由于管理很多类,这样子是一件很复杂的操作,所有.net引用了命名空间这个概念,所谓的命名空间的具体请接下来看.
 
.net的命名空间:
   命名空间就是及爱你过许多功能类似的类组成一个逻辑单元,使用命名空间的方法可以反映程序的逻辑关系,并且可以避免类名的冲突,命名空间是各种类或者其他类型名称的逻辑组织方式,而不是物理组织方式,比如下面的例子:
html#viewSource" commandName="viewSource" highlighterId="highlighter_808287">view sourceprint?
System.Windows.Forms.MessageBox.Show("你好!!");
在你运行当中会出现一个“确定”按钮的对话框,并停止程序的运行,其中我们System.Windows.Forms就是命名空间,其调用了MessageBox类的Show静态方法。这种将命名空间和类名称用点和符合相连使用时,类名被称为全饰类名,用同样的方式调用.net基类的所有类型。当代码多处使用相同的命名空间时,还有一个引用命名空间的方法,就是在程序的代码顶部使用using 关键字引入命名空间,这样子可以一次引入,大大减少重复的工作
举例定义一个用户信息类:username.cs
 
//自定义一个loginMain命名空间
namespace loginMain
{
public class Username
{
/// <summary>
/// 创建字符串类型的字段name
/// </summary>
public string name = "bacteroid";
}
}
 
 定义一个信息输出类:ShowMsg.cs: 
 
//自定义一个loginMain命名空间
namespace loginMain
{
public class ShowMsg
{
/// <summary>
/// 构造函数输出信息
/// </summary>
补充:Web开发 , ASP.Net ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,