当我才接触到名称空间的时候,感觉名称空间这个概念有一些抽象,自己当时对名称空间也不是很理解。把C#学到后面一些的时候自己也就渐渐理解了名称空间的含义了。下面我就具体谈谈自己对名称空间的理解吧。

     在C#中名称空间是以namespace +名称空间名字{}所组成的。个人认为名称空间的作用是为了让在不同的名称空间内的相同类名不会冲突。使用类的时候,就用名称空间.类名。名称空间就好比 是windows操作系统的目录,在不同的目录下可以有相同的目录或者文件。名称空间也是可以嵌套的。使用的时候也是名称空间.子名称空间.类名。在C# 中使用不同的名称空间下的不同类名时。可以直接省略名称空间的名字直接用类名。但是要使用using关键字。好了废话不多说,上码。

using System;
using second; //省略名称空间的名字直接用类名
namespace frist//定义第一个名称空间
{
    class one //不同名称空间的相同类名
    {
        public void print()
        {
            Console.WriteLine("第一个名称空间");
        }
    }
    namespace zero //嵌套的名称空间
    {
        class one//不同名称空间的相同类名
        {
            public void print()
            {
                Console.WriteLine("嵌套在第一个名称空间里的名称空间");
            }
        }
    }
}

namespace second//定义第二个名称空间
{
    class two
    {
        public void print()
        {
            Console.WriteLine("第二个名称空间");
        }
    }
}

namespace third//定义第三个名称空间
{
    class one //不同名称空间的相同类名
    {
        static void Main()
        {
            frist.one t = new frist.one();  
            frist.zero.one t1= new frist.zero.one();
            two t2 = new two();
            //将类实例化

            t.print();
            t1.print();
            t2.print();
            //调用各自类中的方法

            Console.ReadKey();
        }
    }
}

运行结果如下: