C#/Basic Syntax

[C#] namespace와 using

가든가든 2022. 8. 14. 18:39
728x90

💡 C#은 namesapce, class, Main() 메소드로 구성됩니다.

콘솔 화면에 문자열을 출력하려면 네임스페이스.클래스.메서드(); 형태로 사용해야 합니다.

하지만 매번 네임스페이스를 입력하면 번거롭습니다.

이때 using 키워드를 사용하여 코드 위쪽에 using System; 처럼 구문을 넣으면 네임스페이스를 생량하고 클래스.메서드(); 형태로 줄여서 쓸 수 있습니다.

namespace 란?

namespace 키워드는 관련 개체 집합을 포함하는 범위를 선언하는 데 사용됩니다. 네임스페이스를 사용하여 코드 요소를 구성하고 전역적으로 고유한 형식을 만들 수 있습니다.

예제 1

using System;

namespace ConsoleApp1
{
    
    class Program
    {
        static void Main(string[] args)
        {
            Module1 m1 = new Module1();
        }
    }

    class Module1
    {
        public Module1()
        {
            Console.WriteLine("ConsoleApp-1");
        }
    }
}
namespace ConsoleApp2
{
    class Module1
    {
        public Module1()
        {
            Console.WriteLine("ConsoleApp-2");
        }
    }
}

실행 결과

ConsoleApp-1

예제 2

static void Main(string[] args)
        {
            ConsoleApp1.Module1 myModule1 = new ConsoleApp1.Module1();
            ConsoleApp2.Module1 myModule2 = new ConsoleApp2.Module1();
        }

실행 결과

ConsoleApp-1

ConsoleApp-2

결과값으로 보면 ConsoleApp1 / ConsoleApp2 의 네임페이스 차이로 명확하게 구분이 된다.

같이 보면 도움되는 영상
https://www.youtube.com/watch?v=mw254_XAnGU&ab_channel=Covalence

using 이란?

using 지시문을 사용하면 네임스페이스에 정의된 형식을 해당 형식의 정규화된 네임스페이스를 지정하지 않고도 사용할 수 있습니다.

using 사용 예시

//Ex
using System; // System 네임스페이스 사용

namespace HelloWorld;

class HelloWorld2
{
    static void Main(string[] args)
    {
        Console.WriteLine("Hello, World!222"); 
				// using System;을 선언했기 때문에 System 생략 가능
    }
}

using 사용 안 한 예시

에러 코드

//Ex
// using System; //using 사용 안 하기

namespace HelloWorld;

class HelloWorld2
{
    static void Main(string[] args)
    {
        Console.WriteLine("Hello, World!222"); // < 시스템 클래스를 사용하지 않아서 에러
    }
}

에러가 안 나게 하려면

//Ex
// using System; //using 사용 안 하기 

namespace HelloWorld;

class HelloWorld2
{
    static void Main(string[] args)
    {
        System.Console.WriteLine("Hello, World!222"); 
				// 앞에 Sysyem 네임스페이스를 붙여줘야 합니다.
    }
}

using 지시문 - C# 참조

 

using 지시문 - C# 참조

using 지시문 아티클 07/08/2022 읽는 데 18분 걸림 기여자 17명 이 문서의 내용 --> using 지시문을 사용하면 네임스페이스에 정의된 형식을 해당 형식의 정규화된 네임스페이스를 지정하지 않고도 사

docs.microsoft.com

 

728x90