Menu
Coddy logo textTech

메서드 선언하기

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개의 서로 다른 코드 라인을 수정해야 한다는 점입니다. 이 문제를 해결하기 위해, 우리는 메서드를 사용할 것입니다.

메서드를 선언하려면 다음 구문을 사용합니다:

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");
}
challenge icon

챌린지

쉬움

숫자 하나를 입력받는 프로그램을 작성하세요. 입력된 숫자는 아래의 메서드를 몇 번 실행할지를 나타냅니다. 

1부터 1000 사이의 모든 숫자(포함)의 합을 계산하고 이를 출력하는 메서드를 만드세요. 메서드 이름은 원하는 대로 지정할 수 있습니다.

직접 해보기

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번 호출
        }
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨