Section 47.3: 메소드 선언하기
모든 메소드들은 액세스 한정자 (Access Modifier, 예: public
, private
, ...) 와 생략 가능한 추가적인 한정자들 (Optional Modofier, 예: abstract
), 이름 및 필요한 경우 파라미터들로 이루어진 고유의 서명 (signature) 을 갖게 된다. 유의할 점은, 메소드 반환값의 타입은 서명의 일부분이 아니라는 점이다. 메소드의 prototype 은 다음과 같이 표현된다:
AccessModifier OptionalModifier ReturnType MethodName(InputParameters)
{
// 메소드 본문 (body)
}
AccessModifier
에는 public
, protected
, private
등이 있으며 기본값으로는 internal
을 갖게 된다.
OptionalModifier
에는 static
abstract
virtual
override
new
혹은 sealed
등이 있다.
ReturnType
은 반환값이 없는 경우에는 void
이며, 있는 경우에는 간단한 타입인 int
부터 복잡한 클래스에 이르기까지 어떠한 타입도 될 수 있다.
메소드에는 입력 파라미터가 아예 없을 수도 있으며 복수개의 파라미터가 존재할수도 있다. 메소드를 위한 파라미터를 설정하려면, 각각의 파라미터를 일반적인 변수를 선언하듯이 (예: int a
) 선언하게 되며, 복수개의 파라미터를 선언하는 경우는 각 파라미터 사이에 쉼표를 이용해 구분을 하여야 된다 (예: int a, int b
).
파라미터들은 기본값을 가질 수 있다. 이를 위해서는 해당 파라미터에 기본이 될 값을 설정해주어야 한다 (예: int a = 0
). 이렇게 파라미터가 기본값을 가지는 경우, 실제 메소드 호출 시 파라미터에 대한 값을 설정하는 부분은 생략이 가능하다.
아래 예제는 두 정수의 합을 반환하는 메소드를 나타내고 있다:
private int Sum(int a, int b)
{
return a + b;
}
본 문서는 C# Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.
[출처] https://books.goalkicker.com/CSharpBook/
'번역 > C# Notes for Professionals' 카테고리의 다른 글
47.5: 반환 (Return) 타입 (0) | 2022.07.26 |
---|---|
47.4: 매개변수 (Parameter) 와 전달 인자 (Argument) (0) | 2022.07.26 |
47.2: 무명 (Anonymous) 메소드 (0) | 2022.07.26 |
47.1: 메소드 호출하기 (0) | 2022.07.26 |
46.3: 익명 형식 (anonymous types) 과 함께 객체 초기자 (Object initializer) 사용하기 (0) | 2022.07.26 |