中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#中Namespace的概念和用法

發布時間:2021-07-12 14:03:50 來源:億速云 閱讀:181 作者:chen 欄目:編程語言

這篇文章主要講解了“C#中Namespace的概念和用法”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C#中Namespace的概念和用法”吧!

我現在感到學好C#就是就是要知道C#的基本語法,C#的新的特點,C#能干什么!

其中我感到不管如何,NAMESPACE都是很關鍵的。可以說不是只對C#而言,而是整個.NET都是由NAMESPACE組成的。所以我在看了C#的基本語法后,就直奔NAMESPACE來了,在這里寫下自己的一些感覺,希望能對后面學習的人有所幫助。

NAMESPACE在新的.NET環境下編程可以說是無所不在。總之,給我的感覺就是MS的新一代的語言的核心就是NAMESPACE,我們可以通過已經有的NAMESPACE,做我們想做的和愿意做的。當然如果你感覺現有的還不夠你使用的話,你也可以自己來使用現有的來擴展,創建自己的NAMESPACE!(感覺怎么很象以前的COM、DCOM呢?)

如何建立一個NAMESPACE

定義一個NAMESPACE首先需要包含關鍵詞:namespace

格式如下:

namespace Your_nsname
{
//namespase主體內容;
}

呵呵,給我的感覺就好象和Class或Struct一樣。不過它們除了形式有類似外,確實在很多方面都不相同。

在一個NAMESPACE的主體內,可以引用其他的NAMESPACE,例如:

namespace Your_nsname{
//下面引用System和System.Xml著兩個NAMESPACE;
using System;
using System.Xml;
//namespase主體內容;
}

在上面有一個需要注意的就是,如果要引用NAMESPACE的話,那么應該在申明其它類型前引用,如下是錯誤的:

namespace Your_nsname{
//其它一些內容;
//由于引用System和System.Xml放到了其它語句之后,所以。。。
using System;
using System.Xml;
}

另外對于NAMESPACE還有一個有趣的地方,我們先看一下下面的的兩個方式:

方式一:

namespace N1.N2
{ class A {}
class B {}
}

方式二:

namespace N1
{
namespace N2
{
class A {}
class B {}
}
}

在上面的兩種方式中,第二種很容易就能看懂,是在NAMESPACE N1中再創建一個NAMESPACE N2,而N2中有兩個類(class)A、B。那么***種呢?其實上面兩個方式定義的其實是一模一樣的。NAMESPACE是可以嵌套定義的,我們可以使用第二種方式,層次感覺比較清楚,也可以使用***種方式。所不同的是,***中方式中,在N1和N2之間必須用分隔符“.”來表明他們兩者之間的層次關系!

在使用的時候用如下的方式:

N1.N2.A;

N1.N2.B;

在一個NAMESPACE中,我們也可以用一個別名指代現有的NAMESPACE或是一些其他類型數據。

別名的使用格式如下:

using 別名 = 一個已經存在的類型;

例如:using soholife = System;

下面我們通過幾個例子來加深一下理解:

namespace N1.N2
{
class A {}
}
namespace N3
{
using A = N1.N2.A;
class B: A {}
}

這里,在N3中,A是N1.N2.A的別名,而N3.B則繼承于N1.N2.A。同樣的我們也可以用下面的方式來取得同樣的效果:

namespace N3
{
using R = N1.N2;
class B: R.A {}
}

說到這里,我想提個問題,先看下面的例子:

namespace N1.N2
{
class A {}
}
namespace N3
{
class A {}
}
namespace N3
{
using A = N1.N2.A;
}

如果我們這樣寫,會有問題嗎?

答案當然是肯定的了!因為一個別名必須是在NAMESPACE中***的,而上面由于已經有了class a{},我們在用using A =N1.NE.A;就肯定要出錯了!

不過如果我們改成:using B =N1.N2.A;那么結果如何呢?朋友門自己想想吧!我就不多說了!

我們再來看看下面這個例子:

namespace N1.N2
{
class A {}
}
namespace N3
{
using R = N1.N2;
}
namespace N3
{
class B: R.A {}
}

上面的例子中,不知道大家覺得是否正確。

實際上這個是錯誤的!原來在一個分開的單元中使用別名的時候,別名只是在它所在的單元中(NAMESPACE或其它)可以使用,而在其他單元中是不能夠用的,所以上面的那個例子中,在第二個N3中使用R的時候,會提示R未知!當然了,如果我們想使用這樣的方式,我們還是有辦法的,就是把別名R寫到N3的外面,如下:

using R = N1.N2;
namespace N3
{
class B: R.A {}
}

如果上面的文章能全部理解的話,我想你應該能對NAMESPACE有一些概念了!如果能這樣的話,我的目的也達到了!

感謝各位的閱讀,以上就是“C#中Namespace的概念和用法”的內容了,經過本文的學習后,相信大家對C#中Namespace的概念和用法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

禹城市| 车险| 喀喇沁旗| 潢川县| 永靖县| 靖远县| 岳池县| 广东省| 凌云县| 濉溪县| 太仆寺旗| 道真| 昌都县| 太康县| 彩票| 洪洞县| 雅安市| 乌兰浩特市| 防城港市| 贡山| 运城市| 阜南县| 邵阳市| 得荣县| 昭平县| 娄底市| 双流县| 洪江市| 汉川市| 濉溪县| 宁城县| 巴塘县| 星子县| 北京市| 湛江市| 德惠市| 广平县| 仁寿县| 安泽县| 蒲城县| 乾安县|