C#中的命名空间是否类似于Java中的包

Yod*_*oda 2 c# java namespaces

如主题中所述.我不明白命名空间的想法.这应该像Java中的包一样吗?

Jon*_*eet 12

它们相似但不一样.特别是,名称也用于Java中的访问控制(其中默认访问使成员在同一个包中可用).在.NET中并非如此 - 命名空间在.NET中根本不具备可访问性.

此外,导入类型的方式在C#和Java之间可能有所不同:在Java中,您可以导入单个类,而在C#中,common using指令导入整个命名空间.另一方面,C#using指令也可以指定Java不支持的别名.

包和命名空间都是对相关类型进行分组的方式,因此在这种程度上它们是相同的......但它们在细节上有所不同.