C# Namespace

Tutorials PanelPosted by

A namespace is a C# elements that is used to organized your program and separate the codes. Namespace can contain classes, variable, methods, properties, etc. the main usage of namespace is to avoid conflict between classes that have a similar name. It also provides way to put related object under one name space. Example: the name space System.Text contains all classes and methods related to text operations and manipulation. The name space System.Data is where all Data related classes and methods are housed.

Defining a Namespace

In C#, a namespace definition begins with the keyword namespace:

Namespace myNameSpace

{

//code

}

Example:

namespace MyNameSpace
{
 public class MyClass
 {
 public void CreateNamespace()
 {
 System.Console.WriteLine("this is my Namespace");
 }
 }
}

The above namespace contains a class ‘MyClass’ and a void method called ‘CreateNamespace’. Note that you can add more classes to the same namespace. Simply use the same namespace name when you create the class to have it and all its elements added to it.

Accessing a Namespace object

The object in a name space can be accessed by using the namespace name followed by the dot (.), then the object or member name.
Example:

MyNameSpace.MyClass classInstance = new MyNameSpace.MyClass();

The code above creates an instant of the class ‘MyClass’, which is a member of the namespace ‘’MyNamespace.

To avoid repeating the namespace name each time you want to access one of its number within a class, use the keyword ‘Using’ at the beginning of that class as the following:

using MyNameSpace;

Now declare   an instance of the class MyClass as the following:

MyClass classInstance = new MyClass();

Nested namespace

Nested namespace are one namespace inside another. Example:

// First namespace

namespace MyNamespace1
{
    public MyClass1
    {
        public MyMethod1
    {
            Console.Write(“Class 1”);
        }
    }
}

// Second namespace
namespace MyNamespace2
{
        public MyClass2
    {
            public MyMethod2
    {
                Console.Write(“Class 2”);
            }
        }

    }
}

Use the dot (.) to access the members of the namespace. Example:

MyNamespace1.MyNamespace2.MyClass2 classInstance = new MyNamespace1.MyNamespace2.MyClass2();
classInstance.MyMethod2();

Namespace Alias

Using nested namespace and other method can lead to a long declaration which can be annoying in a program. A namespace alias is a solution for this problem. Example of namespace alias:

Using MyAlias = MyNamespace1.MyNamespace2.MyNamespace3;

Now use the alias in the program to define an instance of a class:

MyAlias.MyClass classInstance = new MyAlias.MyClass();

 

Leave a Reply

Your email address will not be published. Required fields are marked *