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 CoddyWelcome aboard와 같이 다른 내용으로 변경하려면 서로 다른 코드 3줄을 변경해야 한다는 것입니다. 이 문제를 해결하기 위해 메서드를 사용하겠습니다.

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

access_modifier [modifiers] return_type method_name(parameters) {
	// 코드
}

예제에서는 Greet라는 이름의 메서드를 만들며, 다음과 같은 형태입니다:

public static void Greet() {
	Console.WriteLine("Welcome to Coddy");
}

이를 나누어 살펴보면:

  • public접근 제어자입니다(누가 이 method를 사용할 수 있는지 제어합니다).
  • static제어자입니다(method가 클래스 자체에 속한다는 의미입니다).
  • void반환 유형입니다(어떤 값도 반환하지 않는다는 의미입니다).
  • Greetmethod 이름입니다.
  • ()에는 parameters가 포함됩니다(여기서는 비어 있습니다).

지금은 method 이름 앞에 항상 public static을 작성하세요. 각 단어의 의미는 나중에 설명하겠습니다.

메서드를 사용/호출/실행하려면 Greet();라고 작성합니다:

Greet();
Console.WriteLine("New session...");
Greet();
Console.WriteLine("Another session...");
Greet();

그러면 위와 동일한 출력이 표시됩니다.

참고: C#에서는 class 내 method declarations의 순서는 중요하지 않습니다. 컴파일러는 전체 class를 먼저 읽으므로, 소스 코드에서 method는 해당 method의 정의 전이나 후에 called될 수 있습니다. 두 경우 모두 valid합니다.

예를 들어, 다음 두 가지 모두 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

챌린지

쉬움

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

11000 사이의 모든 숫자의 합을 계산하여 출력하는 method를 만드세요(포함). method의 이름은 원하는 대로 지정하세요.

직접 해보기

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실력 점검

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

기초의 모든 레슨

직접 연습해 보세요: 온라인 C# 컴파일러