1.using指令
using+命名空間,這種方法基本學習過C#的都用過,好處在於,寫代碼的時候不需要指定詳細的命名空間。
using System;
using MySql.Data;
using MySql.Data.MySqlClient;
using System.Windows.Forms;
using System.Collections;
using System.Configuration;
using System.Data;
2.using語句
是用來簡化資源釋放的,在一定的範圍內有效,除了這個範圍時,自動調用IDisposable釋放掉,當然並不是所有的類都適用,只有實現了IDisposable接口的類纔可以使用。
using (MySqlConnection conn = new MySqlConnection(connectionString)) //using語句,定義一個範圍,在範圍結束時處理對象。{
PrepareCommand(cmd, conn, null, cmdType, cmdText, commandParameters);
int val = cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
return val;
}//在這個大括號中,代碼執行完畢之後,就會跳出這個大括號,而出了大括號之後,就等於出了using的這域。那麼,using的這個域就會在內存中被釋放,從而獲得空閒空間。
因爲stream佔用緩存較大而且通常是使用獨佔方式,如果不及時釋放會浪費資源,並造成其他線程無法訪問文件。
3.using別名
using+別名=包括詳細命名空間信息的具體類型,這種做法有個好處就是當同一個cs引用了兩個不同的命名空間,但兩個命名空間都包括了一個相同名字的類型的時候。當需要用到這個類型的時候,就每個地方都要用詳細命名空間的辦法來區分這些相同名字的類型。而用別名的方法會更簡潔,用到哪個類就給哪個類做別名聲明就可以了。注意:並不是說兩個名字重複,給其中一個用了別名,另外一個就不需要用別名了,如果兩個都要使用,則兩個都需要用using來定義別名的。
using System; using aClass = NameSpace1.MyClass; using bClass = NameSpace2.MyClass; namespace NameSpace1{ public class MyClass
{ public override string ToString()
{ return <span sty<="" p="" style="margin: 0px; padding: 0px;">
e="color:#800000;">"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();
}
}
}