csharp_namespaces.md - brainchildservices/curriculum GitHub Wiki
SLIDE-1
C# NAMESPACE
-
A namespace is designed for providing a way to keep one set of names separate from another.
-
The class names declared in one namespace does not conflict with the same class names declared in another.
-
A namespace definition begins with the keyword namespace followed by the namespace name as follows:
namespace namespace_name { // code declarations }
SLIDE-1(DOWNWARD)
-
The following program demonstrates use of namespaces:
using System; namespace first_space { class namespace_cl { public void func() { Console.WriteLine("Inside first_space"); } } } namespace second_space { class namespace_cl { public void func() { Console.WriteLine("Inside second_space"); } } } class TestClass { static void Main(string[] args) { first_space.namespace_cl fc = new first_space.namespace_cl(); second_space.namespace_cl sc = new second_space.namespace_cl(); fc.func(); sc.func(); } } after code is compiled and executed, output: Inside first_space Inside second_space
SLIDE-2
THE USING KEYWORD
-
The using keyword states that the program is using the names in the given namespace.
-
For example, we are using the System namespace in our programs. The class Console is defined there.
-
We just write:
Console.WriteLine ("Hello there");
-
This could have been written as:
System.Console.WriteLine("Hello there");
-
You can also avoid prepending of namespaces with the using namespace directive.
-
This directive tells the compiler that the subsequent code is making use of names in the specified namespace.
SLIDE-2(DOWNWARD)
-
Let us rewrite our preceding example, with using directive :
using System; using first_space; using second_space; namespace first_space { class abc { public void func() { Console.WriteLine("Inside first_space"); } } } namespace second_space { class efg { public void func() { Console.WriteLine("Inside second_space"); } } } class TestClass { static void Main(string[] args) { abc fc = new abc(); efg sc = new efg(); fc.func(); sc.func(); } } Output is same: Inside first_space Inside second_space
SLIDE-3
NESTED NAMESPACE
-
You can define one namespace inside another namespace as follows:
namespace namespace_name1 { // code declarations namespace namespace_name2 { // code declarations } }
SLIDE-3(DOWNWARDS)
-
You can access members of nested namespace by using the dot (.) operator as follows:
using System; using first_space; using first_space.second_space; namespace first_space { class abc { public void func() { Console.WriteLine("Inside first_space"); } } namespace second_space { class efg { public void func() { Console.WriteLine("Inside second_space"); } } } } class TestClass { static void Main(string[] args) { abc fc = new abc(); efg sc = new efg(); fc.func(); sc.func(); Console.ReadKey(); } } Output: Inside first_space Inside second_space
Ref Link: https://www.tutorialspoint.com/csharp/csharp_namespaces.htm