VFan Yan
在名字空間中 using system這樣的是引用了名字空間, namespace Myname 這樣是做什么用的? ---------------------------------------------------------------
開心就好
比如你叫VFan Yan 那么 namespace VFanYan是定義了你的名字 然后我想用你幫點(diǎn)忙,就可以 using VFanYan了 在java里面,namespace叫package
--------------------------------------------------------------- VFan Yan 我看見在多個(gè)程序里namespace了同一個(gè)名稱, 例如A.cs using system namespace Myname . . .
B.cs using system namespace Myname . . .
這種情況又是怎么回事?
--------------------------------------------------------------- 開心就好 多個(gè)文件里面可以,多個(gè)文件組合體里面也可以的 namespace相當(dāng)于指定了一個(gè)尋址方式。 告訴大家你可以在哪兒找到我。 但namespace不相當(dāng)于物理形式存在,它們可以在不同的文件(這里面指的是輸出文件,如.dll或者.exe),同時(shí),在同一個(gè)Assembly里面也可以有多個(gè)namespace。 與Java不同,Java里面的package對(duì)應(yīng)的是目錄,所以,你如果用到j(luò)ava.io.****的話,你得建一個(gè)三層目錄,特麻煩:( VFan Yan 這個(gè)就不明白了 即然其它程序要使用這個(gè)namespace,那為什么不用using而又namespace一遍?難道說namespace Myname=using Myname?
開心就好 不正確 namespace==你給自己取個(gè)名字 using==我叫你的名字 ---------------------------------------------------------------
VFan Yan Look! A.cs using system namespace Myname . . . B.cs using system namespace Myname . . . C.cs using system using Myname
這時(shí)的Myname是指A.cs里的還是B.cs里的?
--------------------------------------------------------------- 開心就好 應(yīng)該這么說 namespace==報(bào)上所屬小組 using==使用這個(gè)小組中的所有人員 所以A聲明了我是Myname小組的人,而B聲明也是Myname小組的人,則C聲明使用Myname小組的人,則它即可以使用B,也可以A。 namespace不是類,也不是對(duì)象,它只是類與及其它類型聲明的一個(gè)包容體,為了讓這些類排列的更有順序,更加利于別人尋找。盡最大程度排除重名。 你是Dev-club的VFan Yan,但不排除新浪上也有一個(gè)VFan Yan不是你。 所以你的全稱是Dev-Club.VFanYan namespace Dev-Club { public class VFaneYan{ } public class 開心就好{ } public class飛鳥{ } } 注:以上舉例并不是非常準(zhǔn)確,因?yàn)檫@里面的類其實(shí)在現(xiàn)實(shí)中都是對(duì)象:)
--------------------------------------------------------------- VFan Yan 我這樣理解對(duì)不對(duì)?
A.cs using system namespace Myname
{ public class VFanYan{ } }
B.cs using system namespace Myname { public class 開心就好{ } public class飛鳥{ } }
C.cs using system; using Myname; VFanYan New_VFanYan=new VFanYan() 開心就好 New_開心就好=new 開心就好() 飛鳥 New_飛鳥= new 飛鳥()
---------------------------------------------------------------
開心就好 對(duì) 不過C有毛病呀,你那個(gè)語句必須含在一個(gè)方法(或者屬性)中,而那些方法得含在類中,而類必須含在一個(gè)namespace里面 --------------------------------------------------------------- VFan Yan 這里的namespace 又是什么意思?
A.cs using system namespace Myname
{ public class VFanYan{ } }
B.cs using system namespace Myname { public class New_VFanYan:VFanYan
}
B.cs里怎么知道VFanYan是什么呀?
---------------------------------------------------------------
開心就好 兩種方法 1.在同一個(gè)Project里面 2.在兩個(gè)Project里面,但B所在的Project已經(jīng)Add Refrenerce了A所在的Project或者其輸出的Assembly
你仔細(xì)看看源代碼 一個(gè)類中可能using了很多其它的namespace,但是一個(gè)類肯定就只能包括在一個(gè)namespace中。 --------------------------------------------------------------- VFanYan 明白了,它是在同一個(gè)project里,它最后是這樣的csc/target:library /out:Myname.dll A.cs B.cs ,是這個(gè)嗎 --------------------------------------------------------------- 開心就好 聰明,獎(jiǎng)你一個(gè)三星★★★
|
溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!