切換
舊版
前往
大廳
主題

NameSpace 命名空間 C#

梯太 | 2018-12-07 06:30:57 | 巴幣 0 | 人氣 194

用途:
解決程式裡不小心出現的重複命名(變數、函式名等任何人為的命名),特別是在協作時
區隔不同層級的相同方法

避免重複命名
同個專案裡
碼農A寫下了這麼一句
public class Enemy {        void Attack(){
//用力打人
}}

好死不死碼農B也寫下了這麼一句
public class Enemy {        void Attack(){
//輕輕打人
}}
這時候你如果創建Enemy並呼叫Attack,會是執行哪一個?
一個東西被定義兩次,可能連編譯都不讓你過吧
而發生問題之後,得面臨所有牽涉到的程式都得修改的困境
...光想就很可怕
還好有個NameSpace可以幫我們處理這個問題

剛剛上面的代碼用NameSpace把他包起來

namespace Enemy1{
public class Enemy { //變成Enemy1.Enemy
void Attack(){  //變成Enemy1.Enemy.Attack
//用力打人
}
}}
namespace Enemy2{
public class Enemy { //變成Enemy2.Enemy
void Attack(){ //變成Enemy2.Enemy.Attack
//輕輕打人
}
}}
如此就區隔開了

控制區域
namespace BigBoss{
class Boss{
public void order(){
//大老闆的命令
}
}
namespace LittleBoss{
class Boss{
public void order(){
//老闆的命令
}
}
}
}
一樣是老闆的命令,有大有小,這樣就能輕鬆區別開來,且不用糾結於命名
這個例子可能不是很好,自己觀念帶過去就好
送禮物贊助創作者 !
0
留言

創作回應

更多創作