天天看點

using關鍵字的用途

       1、  引用命名空間

  2、  為命名空間或類型建立别名

  3、  使用using語句

1、  引用命名空間,這樣可以在程式中引用命名空間的類型而不必指定詳細的命名空間.

    a)比如在程式中常用的using System.Text;

    b)引用命名空間,并不等于編譯器編譯時加載該命名空間所在的程式集,程式集的加載決定于程式中對該程式集是否存在調用操作,如果代碼中不存在任何調用操作則編譯器将不會加載using引入命名空間所在空間的程式集.是以,在源檔案開頭,引入多個命名空間,并非加載多個程式集,不會造成’過度引用’的弊端

2、為命名空間或類型建立别名

using + 别名 = 包括詳細命名空間資訊的具體的類型。    這種做法有個好處就是當同一個cs引用了兩個不同的命名空間,但兩個命名空間都包含一個相同名字的類型的時候。當需要用到這個類型的時候,就每個地方都要用詳細命名空間的辦法來區分這些相同名字的類型。而用别名的方法會更簡潔,用到哪個類就給哪個類做别名聲明就可以了。    注意:并不是說兩個名字重複,給其中一個用了别名,另外一個就不需要用别名了,如果兩個都要使用,則兩個都需要用using來定義别名的。

3.using語句

using語句允許程式員指定使用資源的對象應當何時釋放資源。using語句中使用的對象必須實作IDisposable接口。此接口提供了Dispose方法,該方法将釋放此對象的資源。

1.可以在using語句之前生命對象

Font font1 = new Font("Arial", 10.0f);

using (font1)

{

    font1

}

2.可以在using語句之中生命對象

using (Font font2 = new Font("Arial", 10.0f))

{

    font2

}

3.可以有多個對象與using語句一起使用,但是必須在using語句内部聲明這些對象

using (Font font3 = new Font("Arial", 10.0f), font4 = new Font("Arial", 10.0f))

{

     font3 and font4

}

使用規則:

using隻能用于實作了IDisposable接口的類型,禁止為不支援IDisposable接口的類型使用using語句,否則會出現編譯錯誤。

繼續閱讀