프로그래밍 강의/C#

C# 6.0, Main 메소드

wnsrn3436 2017. 7. 2. 20:09
using System;
 
class Program
{
    static void Main(string[] args)
    {
        string text = "Hello World";
        Console.WriteLine(text);
    }
}


Main 메소드는 프로그램의 시작점을 담당하는 특별한 식별자이며, static void 혹은 static int 한정자를 지닌다. static로 지정한 Main은 클래스에 종속된 정적 메소드이므로 new를 통한 인스턴스화 작업 없이도 다른 클래스의 메소드에서 이 메소드를 호출할 수 있음을 의미하기에 프로그램의 최초시작점인 Main 메소드는 정적이 되어야 하는 것이다. 만일 Main이 인스턴스 메소드라면 명령 콘솔에서 인스턴스화를 수행한 뒤 프로그램이 실행되어야 한다.


Main의 반환 값은 아예 없거나(void) int 형식이어야 한다. 반환 값이 int 형식일 때 일반적으로 0이 아닌 값의 반환은 에러가 발생했다는 것을 프로그램 실행자에게 나타내는 약속이다.


프로그램이 실행될 때 실행자는 프로그램에 매개변수를 전달할 수 있는데, C#에서는 이 매개변수를 받는 것을 문자열 배열 하나로 처리한다. 이 문자열 배열의 존재는 필수 사항은 아니며 매개변수란을 비워두어도 상관은 없다. 덧붙여, Main 메소드가 아닌 다른 메소드에서 이 명령 줄 매개변수를 참조하려면 System.Environment.CommandLine 속성이나 System.Environment.GetCommandLineArgs 메소드를 사용하면 된다.

Comments