namespace네임스페이스는 성격이나 하는 일이 비슷한 클래스, 구조체, 인터페이스, 대리자, 열거 형식 등을 하나의 이름 아래 묶는 일을 한다.
예를 들어 System.IO 네임스페이스에는 파일 입출력을 다루는 각종 클래스, 구조체, 대리자, 열거 형식 등이 있고, System.Printing 네임스페이스에는 출력에 관련한 일을 하는 클래스 등이 소속되어 있다.
네임스페이스를 만들 때는 namespace 키워드를 이용하며, 네임스페이스 이름 뒤의 중괄호 {} 사이에
이 네임스페이스에 소속되는 클래스 등이 들어간다.
namespace 네임스페이스_이름
{
// 클래스
// 구조체
// 인터페이스
// ...
}
namespace대부분의 경우 파일 하나에 네임스페이스가 하나씩 선언되는 경우가 많다. 이 부분에 착안해서 C# 10에서 부터 파일 범위 네임스페이스라는 기능이 도입됐다.
파일 범위 네임스페이스는 namespace 선언 뒤에 중괄후 {} 대신 세미콜론 ; 을 붙이면 그 파일의 모든
코드는 해당 네임스페이스 소속으로 들어가게 된다.
using System;
namespace CSStudy;
class Program
{
static void Main()
{
Console.WriteLine("Hello World!");
}
}
Hello World!