.net 中 using的几种用法
生活随笔
收集整理的這篇文章主要介紹了
.net 中 using的几种用法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
| 1. using指令。using + 命名空間名字,這樣可以在程序中直接用命令空間中的類型,而不必指定類型的詳細命名空間,類似于Java的import,這個功能也是最常用的,幾乎每個cs的程序都會用到。 例如:using System; 一般都會出現在*.cs中。 2.using別名。using + 別名 = 包括詳細命名空間信息的具體的類型。 這種做法有個好處就是當同一個cs引用了兩個不同的命名空間,但兩個命名空間都包括了一個相同名字的類型的時候。當需要用到這個類型的時候,就每個地方都要用詳細命名空間的辦法來區分這些相同名字的類型。而用別名的方法會更簡潔,用到哪個類就給哪個類做別名聲明就可以了。注意:并不是說兩個名字重復,給其中一個用了別名,另外一個就不需要用別名了,如果兩個都要使用,則兩個都需要用using來定義別名的。 例如: using System; using aClass = NameSpace1.MyClass; using bClass = NameSpace2.MyClass; namespace NameSpace1?? { ????public class MyClass?? ????{ ????????public override string ToString()?? ????????{ ????????????return "You are in NameSpace1.MyClass"; ????????} ????} } namespace NameSpace2?? { ????class MyClass?? ????{ ????????public override string ToString()?? ????????{ ????????????return "You are in NameSpace2.MyClass"; ????????} ????} } namespace testUsing { ????using NameSpace1; ????using NameSpace2; ????/** <summary> ????/// Class1 的摘要說明。 ????/// </summary> ????class Class1 ????{ ????????/** <summary> ????????/// 應用程序的主入口點。 ????????/// </summary> ????????[STAThread] ????????static void Main(string[] args) ????????{ ????????????// ????????????// TODO: 在此處添加代碼以啟動應用程序 ????????????// ????????????? ????????????aClass my1 = new aClass();????????????? ????????????Console.WriteLine(my1); ????????????bClass my2 = new bClass(); ????????????Console.WriteLine(my2); ????????????Console.WriteLine("Press any key"); ????????????Console.Read(); ????????} ????} } 3.using語句,定義一個范圍,在范圍結束時處理對象。 場景: 當在某個代碼段中使用了類的實例,而希望無論因為什么原因,只要離開了這個代碼段就自動調用這個類實例的Dispose。要達到這樣的目的,用try...catch來捕捉異常也是可以的,但用using也很方便。 例如: using (Class1 cls1 = new Class1(), cls2 = new Class1()) { ??// the code using cls1, cls2 ?? } // call the Dispose on cls1 and cls2 這里觸發cls1和cls2的Dispose條件是到達using語句末尾或者中途引發了異常并且控制離開了語句塊。 |
總結
以上是生活随笔為你收集整理的.net 中 using的几种用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一生一世不分离是什么歌呢?
- 下一篇: 路径,文件,目录,I/O常见操作汇总