首页 > 其他 > 详细

C# 关于namespace的细节

时间:2014-03-29 05:54:09      阅读:427      评论:0      收藏:0      [点我收藏+]
<1>namespace的层次结构优先于namespace的别名
如果出现这种别名和已有的namespace重名的情况,要想试用别名可以使用"::"这样就限制了调用的是别名命名空间。
using MyNamespace = ConsoleApplication19Namespace.MyNamespace2;
namespace ConsoleApplication19Namespace
{
    class Program
    {
        static void Main(string[] args)
        {
            MyNamespace.Myclass My = new MyNamespace.Myclass();
            My.print();
            MyNamespace::Myclass You = new MyNamespace::Myclass();
            You.print();
        }
    }


    namespace MyNamespace
    {
        class Myclass
        {
            public void print()
            {
                Console.WriteLine("This is in the ConsoleApplication.MyNamespace.Myclass");
            }
        }
    }


    namespace MyNamespace2
    {
        class Myclass
        {
            public void print()
            {
                Console.WriteLine("This is in the ConsoleApplication.MyNamespace2.Myclass");
            }
        }
    }
}


output:
This is in the ConsoleApplication.MyNamespace.Myclass
This is in the ConsoleApplication.MyNamespace2.Myclass


<2>全局命名空间
global和“::”一起使用 globale::表示的顶级根namespace的别名,通过顶级根namespace的调用可以防止外部变量或者外部类被内部变量,内部类隐藏的出现。
例如:
global::System.Console.WriteLine("what a fuck day");//这样就不会出现问题。


C# 关于namespace的细节,布布扣,bubuko.com

C# 关于namespace的细节

原文:http://blog.csdn.net/ddupd/article/details/22420951

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!