C#基礎(chǔ):命名空間與using用法
當(dāng)前位置:點(diǎn)晴教程→知識(shí)管理交流
→『 技術(shù)文檔交流 』
本期內(nèi)容: 1、什么是命名空間 2、命名空間的內(nèi)嵌寫(xiě)法用法 3、using關(guān)鍵字的用法 4、命名空間、類(lèi)、函數(shù)、變量之間的關(guān)系 一、什么是命名空間 命名空間用于在最高邏輯級(jí)別組織代碼。它們對(duì)暴露給其他程序和應(yīng)用程序的編程元素進(jìn)行分類(lèi)和呈現(xiàn)。在命名空間中,我們可以聲明另一個(gè)命名空間、類(lèi)、接口、結(jié)構(gòu)、枚舉或委托。 我們不能定義諸如屬性、變量和事件之類(lèi)的項(xiàng)目。這些項(xiàng)目必須在結(jié)構(gòu)或類(lèi)等容器中聲明。在使用諸如類(lèi)庫(kù)之類(lèi)的大型對(duì)象組時(shí),命名空間可以防止歧義并簡(jiǎn)化引用。 我們不能定義諸如屬性、變量和事件之類(lèi)的項(xiàng)目。這些項(xiàng)目必須在結(jié)構(gòu)或類(lèi)等容器中聲明。在使用諸如類(lèi)庫(kù)之類(lèi)的大型對(duì)象組時(shí),命名空間可以防止歧義并簡(jiǎn)化引用。 注意:不能將頂級(jí)語(yǔ)句與命名空間一起使用。 命名空間的本意是為了讓代碼結(jié)構(gòu)更清晰,也順便解決了類(lèi)重名的問(wèn)題。Java開(kāi)發(fā)中不需要命名空間是因?yàn)閖ava類(lèi)是靠包名來(lái)區(qū)分的,而JS這類(lèi)的語(yǔ)言如果要實(shí)現(xiàn)區(qū)分同名對(duì)象就需要使用命名空間的思路設(shè)計(jì)代碼。C#中提供了一套命名空間的規(guī)則,具體如下: 定義和使用命名空間: using System;
二、命名空間的內(nèi)嵌寫(xiě)法用法 不言而喻其實(shí)就是在一個(gè)命名空間內(nèi)嵌套一個(gè)另外的命名空間,直接看實(shí)例:
三、using關(guān)鍵字的用法 using關(guān)鍵字最常見(jiàn)的使用方法是引用命名空間,但也有一些其他的用法: 01、using static 指令 指定無(wú)需指定類(lèi)型名稱(chēng)即可訪問(wèn)其靜態(tài)成員的類(lèi)型 using static System.Math;var = PI; // 直接使用System.Math.PI 02、using起別名 using Project = PC.MyCompany.Project; 03、using語(yǔ)句 將實(shí)例與代碼綁定,這時(shí)的using已經(jīng)不是針對(duì)命名空間的操作了,我們可以把它看成一個(gè)代碼塊。在()中聲明一些變量,在{}中使用這些變量,{}中的代碼會(huì)被放在一段try代碼中,而這段代碼執(zhí)行完畢后會(huì)使用finally的方式調(diào)用所聲明變量的Dispose方法(只有實(shí)現(xiàn)了IDisposable接口的類(lèi)才可以在using代碼塊中聲明,因?yàn)橐{(diào)用Dispose方法)。 using System;
四、命名空間、類(lèi)、函數(shù)、變量之間的關(guān)系 關(guān)于他們之間的關(guān)系我也是捋了很久,以下僅代表我個(gè)人觀點(diǎn): 1.命名空間 namespace 中可包含多個(gè)類(lèi) class,命名空間將這些類(lèi)打包起來(lái)。一個(gè)命名空間想調(diào)用另一個(gè)命名空間中的類(lèi)時(shí),就需要首先使用using+命名空間名字 聲明命名空間。 2.類(lèi)通過(guò)class關(guān)鍵字定義,在類(lèi)中有變量和函數(shù)。變量和函數(shù)不能寫(xiě)到命名空間中。 3.函數(shù),可以算是類(lèi)的功能,一個(gè)類(lèi)中通常有多個(gè)函數(shù),實(shí)現(xiàn)多種功能。就比如電視機(jī)是一個(gè)類(lèi),然后電視機(jī)這個(gè)類(lèi)的函數(shù)也就是它的功能就有,播放視頻、發(fā)出聲音、切換頻道,等等。要注意的是,在類(lèi)中通常我們會(huì)看到一個(gè)和類(lèi)同名的函數(shù),它沒(méi)有返回值,也通常沒(méi)有輸入?yún)?shù)(形參),這個(gè)函數(shù)叫做構(gòu)造函數(shù),它的作用一般就是初始化類(lèi)的一些成員變量,默認(rèn)是沒(méi)有形參的,不過(guò)如果有需要可以將其重載為有形參的(直接添加所需形參)。其他的與類(lèi)不同命,且具有返回值的函數(shù)叫做類(lèi)的成員函數(shù),實(shí)現(xiàn)各種類(lèi)的功能。 4.變量,定義在類(lèi)里面但是在函數(shù)外面的變量稱(chēng)為成員變量,它在整個(gè)類(lèi)中一直存在;定義在函數(shù)內(nèi)部的變量叫做局部變量,只存在于當(dāng)前函數(shù)中。成員變量占用的內(nèi)存比局部的大,只需要在函數(shù)里面用一下的變量一般定義為局部就好了。關(guān)于內(nèi)存占用的問(wèn)題以后有機(jī)會(huì)再細(xì)說(shuō)。 該文章在 2023/11/1 15:10:56 編輯過(guò) |
關(guān)鍵字查詢(xún)
相關(guān)文章
正在查詢(xún)... |