在 C# 中,命名空间用于组织许多类,以便非常轻松地处理应用程序。这有助于将一组名称与另一组名称分开。一个命名空间中声明的类名不能与另一个命名空间中声明的相同类名发生冲突。它允许使用组中的分层系统系统地组织代码。分层系统可用于定义嵌套名称空间。您可以通过将代码放置在不同的命名空间中来使代码保持井井有条。
命名空间是一个描述性区域,其中标识符(类型名称、功能、变量等)被赋予一个范围。命名空间用于将代码排列成逻辑组并防止名称冲突,特别是当您的代码库中包含各种库时。
在 C# 中,根命名空间被视为全局命名空间。 global::System 定义了.Net Framework 的命名空间“System”。 System.console 可以在 C# 程序中使用。 System可以被定义为命名空间,而Console可以被视为一个类。默认情况下,.NET Framework 提供了大量的命名空间来轻松实现应用程序。
命名空间有一些属性如下:
命名空间可以通过使用关键字namespace后跟namespace_name来定义。以下语法描述了如何在 C# 编程语言中定义命名空间:
namespace namespace_name { // body of namespace }
示例:
namespace my_program_demo { class demo { public void myfunction() { // your code declarations } } }
在上面的代码片段中,my_program_demo是一个命名空间,它包含一个类demo作为其成员,myfunction()是demo类的一个方法。
命名空间的类可以通过使用关键字来访问,该关键字指定程序在给定命名空间中使用的名称。此关键字提供对要在 .NET 应用程序中使用的相关类和方法的访问。 using 关键字允许使用类而无需定义命名空间。
在c#中,您还可以使用点运算符访问命名空间的成员。 (命名空间_名称.成员_名称)
示例:
using System; namespace Demo { class DemoExample { static void Main(string[] args) { Console.WriteLine("Welcome to C# namespace..."); Console.ReadKey(); } } }
执行程序的步骤:
示例:
using 关键字: 下面的示例指定了 using 关键字的用法。
using System; using first_demo; using second_demo; namespace first_demo { class myclass { public void func1() { Console.WriteLine("Helloworld....."); } } } namespace second_demo { class myclass1 { public void func2() { Console.WriteLine("Welcome to EDUCBA....."); } } } class DemoClass { static void Main(string[] args) { myclass cls = new myclass(); myclass1 cls1 = new myclass1(); cls.func1(); cls1.func2(); Console.ReadKey(); } }
编译并执行上面的代码,你将得到如下图所示的结果。
嵌套命名空间:创建嵌套命名空间的语法如下
namespace NamespaceDemo { namespace NestedNamespace { // code for nested namespace } }
The below example shows usage of nested namespaces: The members of a nested namespace can be accessed by using dot (.) operator:
using System; using first_demo; using first_demo.second_demo; namespace first_demo { class myclass { public void func1() { Console.WriteLine("Helloworld....."); } } namespace second_demo { class myclass1 { public void func2() { Console.WriteLine("This is example of nested namespace....."); } } } } class NestedNamespaceDemo { static void Main(string[] args) { myclass cls = new myclass(); myclass1 cls1 = new myclass1(); cls.func1(); cls1.func2(); Console.ReadKey(); } }
Compile and execute the above code, and you will get the result as shown in the image below:
以上是C# 中的命名空间的详细内容。更多信息请关注PHP中文网其他相关文章!