欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

C#中using的作用是什么

本篇文章為大家展示了C# 中using的作用是什么,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。

成都創(chuàng)新互聯(lián)公司專注于饒河網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供饒河營(yíng)銷型網(wǎng)站建設(shè),饒河網(wǎng)站制作、饒河網(wǎng)頁(yè)設(shè)計(jì)、饒河網(wǎng)站官網(wǎng)定制、小程序定制開(kāi)發(fā)服務(wù),打造饒河網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供饒河網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

C# using作用,微軟MSDN上解釋總共有三種用途

1、引用命名空間。2、為命名空間或類型創(chuàng)建別名。3、使用using語(yǔ)句。

1、引用命名空間,這樣就可以直接在程序中引用命名空間的類型而不必指定詳細(xì)的命名空間。

這個(gè)就不用說(shuō)了吧,比如大家最常用的:usingSystem.Text;

2、為命名空間或類型創(chuàng)建別名:

當(dāng)同一個(gè)cs引用了不同的命名空間,但這些命名控件都包括了一個(gè)相同名字的類型的時(shí)候,可以使用using關(guān)鍵字來(lái)創(chuàng)建別名,這樣會(huì)使代碼更簡(jiǎn)潔。注意:并不是說(shuō)兩個(gè)名字重復(fù),給其中一個(gè)用了別名,另外一個(gè)就不需要用別名了,如果兩個(gè)都要使用,則兩個(gè)都需要用using來(lái)定義別名的。

usingSystem;  usingaClass=NameSpace1.MyClass;  usingbClass=NameSpace2.MyClass;  ......  //使用方式  aClassmy1=newaClass();  Console.WriteLine(my1);  bClassmy2=newbClass();  Console.WriteLine(my2);

3、使用using語(yǔ)句,定義一個(gè)范圍,在范圍結(jié)束時(shí)處理對(duì)象。(不過(guò)該對(duì)象必須實(shí)現(xiàn)了IDisposable接口)。其功能和try,catch,Finally完全相同。
比如:

using(SqlConnectioncn=newSqlConnection(SqlConnectionString)){......}//數(shù)據(jù)庫(kù)連接  using(SqlDataReaderdr=db.GetDataReader(sql)){......}//DataReader

PS:這里SqlConnection和SqlDataReader對(duì)象都默認(rèn)實(shí)現(xiàn)了IDisposable接口,如果是自己寫的類,那就要自己手動(dòng)來(lái)實(shí)現(xiàn)IDisposable接口。比如:

using(Employeeemp=newEmployee(userCode))  {  ......  }  Emlpoyee.cs類:  publicclassEmployee:IDisposable  {   實(shí)現(xiàn)IDisposable接口#region實(shí)現(xiàn)IDisposable接口  /**////  ///通過(guò)實(shí)現(xiàn)IDisposable接口釋放資源  ///  publicvoidDispose()  {  Dispose(true);  GC.SuppressFinalize(this);  }  /**////  ///釋放資源實(shí)現(xiàn)  ///  ///  protectedvirtualvoidDispose(booldisposing)  {  if(!m_disposed)  {  if(disposing)  {  //Releasemanagedresources  if(db!=null)  this.db.Dispose();  if(dt!=null)  this.dt.Dispose();  this._CurrentPosition=null;  this._Department=null;  this._EmployeeCode=null;   }  //Releaseunmanagedresources  m_disposed=true;  }  }  /**////  ///析構(gòu)函數(shù)  ///  ~Employee()  {  Dispose(false);  }  privateboolm_disposed;   #endregion  }

使用using語(yǔ)句需要注意的幾點(diǎn):

3.1、對(duì)象必須實(shí)現(xiàn)IDisposeable接口,這個(gè)已經(jīng)說(shuō)過(guò),如果沒(méi)有實(shí)現(xiàn)編譯器會(huì)報(bào)錯(cuò)誤。
如:

using(stringstrMsg="MyTest")   {  Debug.WriteLine(strMsg);//Can'tbecompiled   }

3.2、第二個(gè)using對(duì)象檢查是靜態(tài)類型檢查,并不支持運(yùn)行時(shí)類型檢查,因此如下形式也會(huì)出現(xiàn)編譯錯(cuò)誤。

  1. SqlConnectionsqlConn=newSqlConnection(yourConnectionString);  

  2. objectobjConn=sqlConn;  

  3. using(objConn)  

  4. {  

  5. Debug .WriteLine(objConn.ToString());//Can'tbecompiled
    }

不過(guò)對(duì)于后者,可以通過(guò)“as”來(lái)進(jìn)行類型轉(zhuǎn)換方式來(lái)改進(jìn)。

SqlConnectionsqlConn=newSqlConnection(yourConnectionString);  objectobjConn=sqlConn;  using(objConnasIDisposable)  {  Debug.WriteLine(objConn.ToString());  }

3.3、當(dāng)同時(shí)需要釋放多個(gè)資源時(shí)候,并且對(duì)象類型不同,可以這樣寫:

using(SqlConnectionsqlConn=newSqlConnection(yourConnectionString))  using(SqlCommandsqlComm=newSqlCommand(yourQueryString,sqlConn))  {  sqlConn.Open();//Openconnection  //OperateDBhereusing"sqlConn"  sqlConn.Close();//Closeconnection  }

如果對(duì)象類型相同,可以寫到一起:

using(FontMyFont=newFont("Arial",10.0f),MyFont2=newFont("Arial",10.0f))  {  //useMyFontandMyFont2  }//compilerwillcallDisposeonMyFontandMyFont2

3.4、using關(guān)鍵字只是針對(duì)C#語(yǔ)句,對(duì)于VB等其他語(yǔ)言還沒(méi)有對(duì)應(yīng)的功能。

上述內(nèi)容就是C# 中using的作用是什么,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)頁(yè)標(biāo)題:C#中using的作用是什么
網(wǎng)頁(yè)URL:http://chinadenli.net/article42/jijihc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)小程序開(kāi)發(fā)App設(shè)計(jì)外貿(mào)建站企業(yè)網(wǎng)站制作網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)