메소드의 매개변수는 기본값을 가질 수 있다.

void MyMethod( int a, int b = 0)
{
			Console.WriteLine( "{0}, {1}", a, b);
}

이와 같이 기본값을 가진 매개변수는 메소드를 호출할 때 해당 인수를 생략할 수 있습니다.

MyMethod( 3 ) ;

물론 필요한 경우에는 인수를 입력할 수 도 있습니다. 기본값을 가진 매개변수는 필요에 따라

인수를 할당하거나 할당하지 않을 수 있기 때문에 이를 “선택적 인수(Optional Argument)”라고 부릅니다.

MyMethod( 3, 4 );

선택적 인수는 항상 필수 인수 뒤에 와야 합니다.

물론 필수 인수가 하나도 없는 경우에는 이 규칙에 신경 쓰지 않아도 됩니다.

void MyMethod_0( int a = 0)
{
			Console.WriteLine( "{0}", a);
}

void MyMethod_1( int a, int b = 0)
{
			Console.WriteLine( "{0}, {1}", a, b);
}

void MyMethod_2( int a, int b, int c = 10, int d = 20)
{
						Console.WriteLine( "{0}, {1}, {2}, {3}", a, b, c, d);
}