메서드 선언하기
Coddy C# 여정의 기초 섹션에 포함된 레슨 — 69개 중 49번째.
메서드는 이름을 가진 일련의 코드입니다. 메서드의 목적은 코드의 일부를 여러 번 재사용하는 것입니다.
예를 들어, 다음 코드를 살펴보세요:
Console.WriteLine("Welcome to Coddy");
Console.WriteLine("New session...");
Console.WriteLine("Welcome to Coddy");
Console.WriteLine("Another session...");
Console.WriteLine("Welcome to Coddy");우리는 동일한 코드 Console.WriteLine("Welcome to Coddy")를 계속해서 반복해서 사용합니다. 이 코드의 또 다른 문제는 만약 메시지를 Welcome to Coddy에서 Welcome aboard와 같은 다른 것으로 변경하고 싶다면, 3개의 서로 다른 코드 줄을 수정해야 한다는 점입니다. 이 문제를 해결하기 위해, 우리는 메서드(methods)를 사용할 것입니다.
메서드를 선언하려면 다음 구문을 사용합니다:
access_modifier [modifiers] return_type method_name(parameters) {
// 코드
}우리의 예제를 위해, Greet라는 이름의 메서드를 생성할 것이며 다음과 같은 모습일 것입니다:
public static void Greet() {
Console.WriteLine("Welcome to Coddy");
}자세히 살펴보면 다음과 같습니다:
public은 접근 제한자입니다 (이 메서드를 누가 사용할 수 있는지 제어합니다)static은 수정자입니다 (메서드가 클래스 자체에 속함을 의미합니다)void는 반환 형식입니다 (아무런 값도 반환하지 않음을 의미합니다)Greet은 메서드 이름입니다()는 매개변수를 포함합니다 (여기서는 비어 있습니다)
지금은 메서드 이름 앞에 항상 public static을 작성하세요. 각 단어의 의미는 나중에 설명하겠습니다.
메서드를 사용/호출/실행하려면 다음과 같이 Greet();를 작성합니다:
Greet();
Console.WriteLine("New session...");
Greet();
Console.WriteLine("Another session...");
Greet();이는 위와 동일한 결과를 생성합니다.
참고: C#에서 클래스 내의 메서드 선언 순서는 중요하지 않습니다. 컴파일러가 클래스 전체를 먼저 읽으므로, 소스 코드에서 메서드 정의 전이나 후에 메서드를 호출할 수 있으며 두 방식 모두 유효합니다.
예를 들어, C#에서는 다음 두 가지 모두 올바릅니다:
// 메서드가 먼저 정의된 후 호출됨 public static void Greet() { Console.WriteLine("Welcome to Coddy"); } Greet(); Console.WriteLine("New session..."); Greet();
// 메서드가 먼저 호출되고 나중에 정의됨 — C#에서도 유효함 Greet(); Console.WriteLine("New session..."); Greet(); public static void Greet() { Console.WriteLine("Welcome to Coddy"); }
챌린지
쉬움하나의 숫자 입력을 받는 프로그램을 작성하세요. 입력된 숫자는 아래 메서드를 몇 번 실행할지를 나타냅니다.
1부터 1000 사이의 모든 숫자(포함)의 합을 계산하고 출력하는 메서드를 만드세요. 메서드 이름은 원하는 대로 정할 수 있습니다.
치트 시트
메서드는 이름을 가진 코드의 시퀀스로, 코드를 여러 번 재사용하는 데 사용됩니다.
메서드 구문:
access_modifier return_type method_name(parameters) {
// 코드
}메서드 선언 예시:
public static void Greet() {
Console.WriteLine("Welcome to Coddy");
}메서드를 호출/실행하려면:
Greet();참고: C#에서 메서드 선언 순서는 중요하지 않습니다. 메서드가 동일한 클래스 내에 정의되어 있는 한, 정의되기 전이나 후에 호출할 수 있습니다.
직접 해보기
using System;
public class Program {
// 메서드 선언
public static void SumNumbers() {
// 메서드 완성하기
}
public static void Main(string[] args) {
int n = int.Parse(Console.ReadLine());
for (int i = 0; i < n; i++) {
// 메서드를 n번 호출하기
}
}
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.