在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ C#/ C#命名空間
C#屬性(Properties)
C#與Java比較
C#方法
C#枚舉
C#關(guān)鍵字
C# StreamReader類
C#不安全代碼
C#文件(I/O)
C#匿名方法
C#線程同步
C# Thread類
C#主線程
C#數(shù)據(jù)類型
C# FileStream類
C#預(yù)處理指令
C#繼承
C#循環(huán)
C#決策結(jié)構(gòu)
C#集合
C#反射
C#類型轉(zhuǎn)換
C#泛型
C# StringReader類
C#歷史
C#運(yùn)算符重載
C#屬性
C#線程實(shí)例:Sleep()方法
C#線程示例:優(yōu)先級
C#線程實(shí)例:Join()方法
C# BinaryReader類
C#類
C#索引器
C# BinaryWriter類
C#序列化
C#常量和文字
C#程序結(jié)構(gòu)
C#封裝
C#事件
C#可空類型(nullable)
C#基本語法
C#異常處理
C#教程
C#接口
C# System.IO命名空間
C#線程命名實(shí)例
C# StringWriter類
C#線程實(shí)例
C#數(shù)組
C#正則表達(dá)式
C#命名空間
C#反序列化
C#與C++比較
C# TextWriter類
C#多線程
C#字符串
C#是什么?
C#變量
C# FileInfo類
C#線程實(shí)例:Abort()方法
C#結(jié)構(gòu)體
C#運(yùn)算符
C#入門程序
C#多線程生命周期
C# TextReader類
C# DirectoryInfo類
C#委托

C#命名空間

命名空間旨在提供一種將一組名稱與另一組名稱分開的方法。在一個命名空間中聲明的類名稱與在另一個命名空間中聲明的相同類名稱不沖突。

定義命名空間

命名空間定義以關(guān)鍵字namespace開頭,后跟命名空間名稱如下:

namespace namespace_name
{
   // code declarations
}

要調(diào)用命名空間啟用的任一函數(shù)或變量的版本,請按如下所示使用命名空間名稱指定:

namespace_name.item_name;

以下程序演示了命名空間的使用:

using System;
namespace first_space
{
   class namespace_cl
   {
      public void func()
      {
         Console.WriteLine("Inside first_space");
      }
   }
}

namespace second_space
{
   class namespace_cl
   {
      public void func()
      {
         Console.WriteLine("Inside second_space");
      }
   }
}

class TestClass
{
   static void Main(string[] args)
   {
      first_space.namespace_cl fc = new first_space.namespace_cl();
      second_space.namespace_cl sc = new second_space.namespace_cl();
      fc.func();
      sc.func();
      Console.ReadKey();
   }
}

當(dāng)編譯和執(zhí)行上述代碼時,會產(chǎn)生以下結(jié)果:

Inside first_space
Inside second_space

using關(guān)鍵字

using關(guān)鍵字指出程序正在使用給定命名空間中的名稱。例如,在前面章節(jié)的示例程序中使用了System命名空間。Console類是在System命名空間中定義的,所以只簡寫為:

Console.WriteLine ("Hello there");

可以把完整的名稱寫成:

System.Console.WriteLine("Hello there");

還可以使用using namespace偽指令避免前綴命名空間。該指令告訴編譯器后續(xù)代碼正在使用指定命名空間中的名稱。因此,命名空間隱含在以下代碼中:

下面重寫我們重寫前面的例子,使用以下代碼中的指令:

using System;
using first_space;
using second_space;

namespace first_space
{
   class abc
   {
      public void func()
      {
         Console.WriteLine("Inside first_space");
      }
   }
}

namespace second_space
{
   class efg
   {
      public void func()
      {
         Console.WriteLine("Inside second_space");
      }
   }
}   

class TestClass
{
   static void Main(string[] args)
   {
      abc fc = new abc();
      efg sc = new efg();
      fc.func();
      sc.func();
      Console.ReadKey();
   }
}

當(dāng)編譯和執(zhí)行上述代碼時,會產(chǎn)生以下結(jié)果:

Inside first_space
Inside second_space

嵌套命名空間

可以在一個命名空間中定義另一個命名空間,如下所示:

namespace namespace_name1
{
   // code declarations
   namespace namespace_name2
   {
      // code declarations
   }
}

可以使用點(diǎn)(.)運(yùn)算符訪問嵌套命名空間的成員,如下所示:

using System;
using first_space;
using first_space.second_space;

namespace first_space
{
   class abc
   {
      public void func()
      {
         Console.WriteLine("Inside first_space");
      }
   }
   namespace second_space
   {
      class efg
      {
         public void func()
         {
            Console.WriteLine("Inside second_space");
         }
      }
   }   
}

class TestClass
{
   static void Main(string[] args)
   {
      abc fc = new abc();
      efg sc = new efg();
      fc.func();
      sc.func();
      Console.ReadKey();
   }
}

當(dāng)編譯和執(zhí)行上述代碼時,會產(chǎn)生以下結(jié)果:

Inside first_space
Inside second_space