继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

C#中的命名空间namespace使用方法

Besthope
关注TA
已关注
手记 1
粉丝 2
获赞 13

最近在学C#,一直有个疑惑。
当你使用IDE V.S.创建一个新工程后,总是会使用namespace来将除using其余的所有代码全部包裹起来。

using System;
namespace ConsoleApplication1
{
   class Program
   {
      static void Main(string[] args)
      {
      }
   }
}

嗯?这里的命名空间是干啥用的?

using System;
class Program
{
    static void Main(string[] args)
    {

    }
}

我这样写IDE也没报错啊。
但是你再写一段:

using System;
class Class1
{
    static int i = 2;
    static class Class2
    {
        static int i = 3;
    }
    static void Main(string[] args)
    {
      Console.WriteLine(i);
      Console.WriteLine(i);
    }
 }

这里有问题。输出了2次Class1的i值,与我想要的不同。
怎么办呢?

using System;
namespace pro1
{
    class Class1
    {
        public static int i = 2;
    }
    namespace pro2
    {
        class Class1
        {
            public static int i = 2;
        }
        class Class2
        {
            static void Main()
            {
                Console.Write(pro1.Class1.i);
            }
        }
    }
}

这时候命名空间就有用了,它为变量提供了一个空间。
相当于城市里的工厂,举个例子:
城市1里面有个工厂叫富土康里面有个工人叫张全蛋。
城市2里面也有个工厂富土康也有个工人叫张全蛋。
他们虽然名字,工厂一样,但他们的城市不一样。
把这两个人叫在一起,他们也还是两个人,长的样子都不一样。
因此namespace的意思就是提供了一个空间,可以存放工厂,等等...

namespace是与using相对应的两个代码。
我们所视的“using System;"其实是在**引用***System这个命名空间下的代码。

打开App,阅读手记
7人推荐
发表评论
随时随地看视频慕课网APP