C# 프로그램은 하나 이상의 파일로 구성됩니다. 각 파일에는 0개 이상의 네임스페이스가 포함됩니다. 네임스페이스에는 클래스, 구조체, 인터페이스, 열거형, 대리자 또는 기타 네임스페이스와 같은 형식이 포함됩니다. 다음 예제는 이러한 모든 요소를 포함하는 C# 프로그램의 기본 구조입니다.
using System;
Console.WriteLine("Hello world!");
namespace YourNamespace
{
class YourClass
{
}
struct YourStruct
{
}
interface IYourInterface
{
}
delegate int YourDelegate();
enum YourEnum
{
}
namespace YourNestedNamespace
{
struct YourStruct
{
}
}
}
앞의 예제에서는 프로그램의 진입점에 최상위 문 를 사용합니다. 하나의 파일만 최상위 문을 가질 수 있습니다. 프로그램의 진입점은 해당 파일의 첫 번째 프로그램 텍스트 줄입니다. 이 경우 Console.WriteLine("Hello world!");
.
다음 예제와 같이 Main
프로그램의 진입점으로 명명된 정적 메서드를 만들 수도 있습니다.
// A skeleton of a C# program
using System;
namespace YourNamespace
{
class YourClass
{
}
struct YourStruct
{
}
interface IYourInterface
{
}
delegate int YourDelegate();
enum YourEnum
{
}
namespace YourNestedNamespace
{
struct YourStruct
{
}
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello world!");
}
}
}
이 경우 프로그램은 Main
메서드의 첫 번째 줄에서 시작됩니다, 그리고 그것은 Console.WriteLine("Hello world!");
입니다.
표현식과 명령문
C# 프로그램은 식 및 문을 사용하여 빌드 됩니다. 식은 값을 생성하고 문은 다음 작업을 수행합니다.
식은 단일 값으로 계산되는 값, 변수, 연산자 및 메서드 호출의 조합입니다. 표현식은 결과를 생성하며, 값이 기대되는 모든 곳에서 사용할 수 있습니다. 다음 예제는 표현입니다.
-
42
(리터럴 값) -
x + y
(산술 연산) -
Math.Max(a, b)
(메서드 호출) -
condition ? trueValue : falseValue
(조건식) -
new Person("John")
(개체 만들기)
문은 작업을 수행하는 전체 명령입니다. 문은 값을 반환하지 않습니다. 대신 프로그램 흐름을 제어하거나, 변수를 선언하거나, 작업을 수행합니다. 다음의 예제들은 문장입니다.
-
int x = 42;
(선언문) -
Console.WriteLine("Hello");
(표현문 - 메서드 호출 식을 감싸는 문장) -
if (condition) { /* code */ }
(조건문) -
return result;
(return 문)
주요 차이점: 표현식은 값으로 평가되는 반면, 문은 명령을 실행합니다. 메서드 호출과 같은 일부 구문은 둘 다일 수 있습니다. 예를 들어, Math.Max(a, b)
는 int result = Math.Max(a, b);
에서 사용될 때 '식'으로 사용되지만, 단독으로 Math.Max(a, b);
로 작성될 때 '식 문'이 됩니다.
문장에 대한 자세한 내용은 문장을 참조하세요. 식 본문 멤버 및 기타 식 기능에 대한 자세한 내용은 식 본문 멤버를 참조하세요.
관련 섹션
기본 사항 가이드의 형식 섹션에서 이러한 프로그램 요소에 대해 알아봅니다.
C# 언어 사양
자세한 내용은 C# 언어 사양 기본 개념을 참조하세요. 언어 사양은 C# 구문 및 사용의 최종 소스입니다.
.NET