在學習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方法。