在学习ADO.Net时,对using的机制不是很了解,经过学习以后现总结using的三种用法:
1、引入命名空间
2、创建别名
3、强制资源清理
下面本文将从这三个角度来一一讲解using的应用。
(1)引用命名空间
用法规则为:using namespace;//其中namespace为所引用命名空间的名称。
命名空间是.NET程序在逻辑上的组织结构,而并非实际的物理结构,是一种避免类名冲突的方法,用于将不同的数据类型组合划分的方式。例如,在.NET中很多的基本类型都位于System命名空间,数据操作类型位于System.Data命名空间。
(2)创建命名空间别名
这种做法有个好处就是当同一个cs文件引用了两个不同的命名空间,但是两个命名空间都包括了一个相同名字的类型的时候,就会为此类型命名空间创建别名。
例如:using yezi1=ABC.yezi;
using yezi2=BCD.yezi;
(3)using语句,定义一个范围,在范围结束时处理对象。
using语句提供了一个脉络清晰的机制来控制资源的生存期,创建的对象会在using语句结束时被摧毁,以下代码说明了using的机制:
using(TextReader reader=new StreamReader(filename))
{
string line;
whil((line=read.ReadLine())!=null)
{
Console.WriteLine(line);
}
}
等价于以下形式:
{
TextReader reader=new StreamReader(filename);
try
{
string line;
while((line=read.ReadLine())!=null)
{
Console.WriteLine(line);
}
}
finally
{
if(reader!=null)
{
(IDisposible)reader.Dispose();
}
}
}
using是在出了作用域以后调用Dispose方法,在Dispose方法内部会自动调用Close方法。