본문 바로가기
C#/이론

[예제로 배우는 C# 프로그래밍] 네임스페이스

by 단월໒꒱ 2022. 7. 6.

 

C# 네임스페이스

 

 

 

네임스페이스

 

  .NET Framework는 무수하게 많은 클래스들을 갖고 있는데, 이 많은 클래스들을 충돌 없이 보다 편리하게 관리하고 사용하기 위해 .NET에서 네임스페이스를 사용한다. C#에서도 이러한 개념을 적용하여 클래스들이 대개 네임스페이스 안에서 정의된다.

  클래스가 네임스페이스 없이도 정의될 수 있지만, 거의 모든 경우 일반적으로 네임스페이스를 정의한다.

 

 

namespace MyNamespace
{
   class A
   {
   }
   
   class B
   {
   }
}

 

 

 

네임스페이스 참조

 

  네임스페이스를 사용하는 방법은 두가지가 있다.

    ① 클래스명 앞에 네임스페이스 전부를 적는 경우

    ② 프로그램 맨 윗단에 해당 using을 사용하여 사용하고자 하는 네임스페이스를 한번 설정해주고 이후 해당 파일 내에서 네임스페이스 없이 직접 클래스를 사용하는 경우

 

  실무에서는 주로 두번째 방식을 사용한다.

 

 

//첫번째 방식
static void Main(string[] args)
{
    System.Console.WriteLine();
}

//두번째 방식
using System; //System 네임스페이스 지정

static void Main(string[] args)
{
    Console.WriteLine();
}

 

 

 

예제

 

  다음 예제를 보자.

 

 

using System;

namespace MySystem.MySubSystem
{
    public class Class1
    {
        public int Calculate(int a, int b)
        {
            int abs_Sum = System.Math.Abs(a) + Math.Abs(b);
            return abs_Sum;
        }
    }
}

 

 

  클래스 Class1은 MyStystem.MySubSystem이라는 네임스페이스 안에서 정의되어 있다.

  네임스페이스는 계층적으로 구성될 수 있다.

  System.Math.Abs(a)는 사용하고자 하는 클래스명 앞에 해당 네임스페이스를 적은 경우이고, Math.Abs(b)는 네임스페이스를 맨 윗단에 using System;으로 정의해준 경우이다.

  다른 C# 프로젝트에서 위의 Class1을 사용하려면 using MySystem.MySubSystem;을 파일 상단에 적으면 된다.

 

 

 

 

 

 

댓글