본문 바로가기
Programming

C# 메서드와 매개변수

by 나무수피아는 지식의 가지를 뻗어가는 공간입니다. 2025. 12. 5.
반응형

메서드 정의와 호출

   메서드는 특정 작업을 수행하는 코드 블록입니다. 메서드는 반환형, 이름, 매개변수 목록으로 정의되며, 호출될 때 작업을 수행합니다.

메서드 정의 예시

메서드는 반환형, 이름, 매개변수로 정의됩니다. 다음은 간단한 메서드 정의 예시입니다.


public static void Greet(string name)
{
    Console.WriteLine("Hello, " + name);
}

메서드 호출 예시

정의한 메서드를 호출하려면 메서드 이름을 사용하고, 필요한 인수를 전달합니다.


Greet("Alice"); // 출력: Hello, Alice

기본값, ref, out, params 키워드

기본값(Default Parameters)

메서드의 매개변수에 기본값을 설정할 수 있습니다. 호출 시 값을 제공하지 않으면 기본값이 사용됩니다.


public static void Greet(string name = "Guest")
{
    Console.WriteLine("Hello, " + name);
}
Greet(); // 출력: Hello, Guest

ref 키워드

ref 키워드는 메서드가 매개변수의 값을 수정할 수 있도록 합니다. 매개변수는 호출 전에 초기화되어야 합니다.


public static void Increment(ref int number)
{
    number++;
}

int x = 5;
Increment(ref x);
Console.WriteLine(x); // 출력: 6

out 키워드

out 키워드는 메서드가 값을 반환하도록 할 수 있습니다. 호출 시 초기화할 필요는 없지만, 메서드 내에서 반드시 값을 할당해야 합니다.


public static void GetDimensions(out int length, out int width)
{
    length = 10;
    width = 5;
}

int l, w;
GetDimensions(out l, out w);
Console.WriteLine($"Length: {l}, Width: {w}"); // 출력: Length: 10, Width: 5

params 키워드

params 키워드는 메서드가 가변 인수 목록을 받을 수 있도록 합니다. 여러 인수를 배열처럼 처리할 수 있습니다.


public static void PrintNumbers(params int[] numbers)
{
    foreach (var number in numbers)
    {
        Console.WriteLine(number);
    }
}

PrintNumbers(1, 2, 3, 4, 5); // 출력: 1 2 3 4 5

메서드 오버로딩

   메서드 오버로딩은 같은 이름의 메서드를 매개변수의 타입이나 개수가 다르게 정의하여 여러 가지 형태로 호출할 수 있게 하는 기능입니다.


public static void Display(int number)
{
    Console.WriteLine("Integer: " + number);
}

public static void Display(string text)
{
    Console.WriteLine("String: " + text);
}

Display(10); // 출력: Integer: 10
Display("Hello"); // 출력: String: Hello

 

반응형

'Programming' 카테고리의 다른 글

C# 클래스와 객체  (0) 2025.12.07
C# 인터페이스와 추상 클래스  (0) 2025.12.06
C# 배열과 컬렉션 기초  (0) 2025.12.04
C# 연산자와 제어문  (6) 2025.12.03
C# 기본 문법과 데이터형  (0) 2025.12.02