namespace 关键字与命名空间
namespace 关键字用于声明包含一组相关对象的作用域。 可以使用命名空间来组织代码元素并创建全局唯一类型。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//#csg002-01
//一个命名空间下可以包含零个或多个类,接口,结构,枚举,委托以及另一个命名空间
//命名空间隐式具有公共访问权限,这是不可修改的。
namespace SampleNamespace
{
class SampleClass { }
interface ISampleInterface { }
struct SampleStruct { }
enum SampleEnum { a, b }
delegate void SampleDelegate(int i);
namespace Nested
{
class SampleClass2 { }
}
}
//#csg002-02
//可以在两个或多个声明中定义一个命名空间。
//例如,下面的示例将两个类定义为 MyCompany.Proj1 命名空间的一部分
namespace MyCompany.Proj1
{
class MyClass
{
}
}
namespace MyCompany.Proj1
{
class MyClass1
{
}
}
//#csg002-03
//命名空间可以嵌套,访问时使用 . 运算符分隔。
namespace MyNameSpace2
{
namespace Proj3
{
class ClassB
{
}
}
}
namespace MyNameSpace
{
public class ClassC
{
public ClassC()
{
var b = new MyNameSpace2.Proj3.ClassB();
}
}
}