Tuesday, June 28, 2016

Namespace trong C#

Namespace trong C#
Namespace trong C#

Một namespace trong C# được thiết kế để cung cấp một cách để giữ một tập hợp các tên được phân biệt riêng rẽ nhau. Các tên lớp được khai báo trong một namespace không xung đột với cùng tên đó của lớp được khai báo trong namespace khác.

Định nghĩa một Namespace trong C#

Một định nghĩa namespace trong C# bắt đầu với từ khóa namespace được theo sau bởi tên của namespace đó, như sau:
namespace namespace_name
{
   // code declarations
}
Để gọi phiên bản đã kích hoạt của namespace của hàm hoặc biến, bạn phụ thêm vào sau tên của namespace đó như sau:
namespace_name.item_name;
Ví dụ sau minh họa cách sử dụng của các namespace trong C#:
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();
      Console.ReadKey();
   }
}
Khi code trên được biên dịch và thực thi, nó sẽ cho kết quả:
Inside first_space
Inside second_space

Từ khóa using trong C#

Từ khóa using biểu diễn rằng chương trình đang sử dụng các tên trong namespace đã cho. Ví dụ: chúng ta đang sử dụng System namespace trong các chương trình của chúng ta. LớpConsole được định nghĩa ở đây. Chúng ta viết:
Console.WriteLine ("Hello there");
Chúng ta có thể viết tên đầy đủ là:
System.Console.WriteLine("Hello there");
Bạn cũng có thể tránh việc phụ thêm vào các namespace bởi sử dụng directive là usingnamespace. Chỉ thị này nói cho compiler rằng phần code tiếp theo đang sử dụng các tên trong namespace đã xác định.
Giờ viết lại ví dụ trên bởi sử dụng using directive trong C#:
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();
      Console.ReadKey();
   }
}
Khi code trên được biên dịch và thực thi, nó sẽ cho kết quả:
Inside first_space
Inside second_space

Lồng Namespace trong C#

Trong C#, bạn có thể định nghĩa một namespace bên trong các namespace khác, như sau:
namespace namespace_name1
{
   // code declarations
   namespace namespace_name2
   {
      // code declarations
   }
}
Bạn có thể truy cập các thành viên của các namespace được lồng vào nhau này bởi sử dụng toán tử dot (.) trong C#, như sau:
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();
   }
}
Khi code trên được biên dịch và thực thi, nó sẽ cho kết quả:
Inside first_space
Inside second_space
Loạt bài hướng dẫn học C# cơ bản và nâng cao của chúng tôi dựa trên nguồn tài liệu của:Tutorialspoint
Follow https://www.facebook.com/giaithuatlaptrinhTN/để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.

Bài Viết Liên Quan