TIL

2024 09 23 TIL (메서드)

noc777 2024. 9. 23. 21:14

메서드란?

 

메서드는 특정 작업을 수행하기 위해 기능하도록 만든 코드 블록입니다.

코드가 중복되어 사용되어 복잡해지는 것을 막기 위해서라도 메서드를 사용하는 것은 필수적입니다.

메서드는 기능이 필요할 때 메서드 이름을 통해 호출합니다.

 

메서드의 구조

 

메소드의 구조는 다음과 같습니다.

 

[접근 제한자] [리턴 타입] [메서드 이름] ([매개 변수])

{

     //메서드 내용

}

 

//예시로 int 자료형을 가진 메서드 score 를 적었습니다.

 

public int score(int x)

{

     int sum = x%2

     return sum;

}

 

 

접근 제한자 :  메서드에 접근할 수 있는 범위를 설정하는 역할을 합니다.

주로 사용하는 접근제한자는 다음과 같습니다.

public    외부 클래스가 자유롭게 사용할 수 있습니다.

private   외부에서 사용이 불가능합니다.

protected    같은 클래스 또는 하위 클래스만 사용가능합니다.

 

 

리턴 타입:  리턴 타입은 메서드가 반환하는 데이터의 자료형을 지정합니다.

만약 반환값이 없다면 void를 사용합니다.  그 이외엔 메서드가 끝날 때 꼭 반환값을 부여하여야합니다.

 

메서드 이름: 메서드 이름은 메서드의 기능을 사용하기 위해 호출할 때 사용합니다.

score();   와 같이 사용하며  괄호안에 매개 변수를 넣을수 있습니다.

 

매개 변수: 메서드에 전달되는 입력값입니다.  메서드의 소괄호에 특정 매개 변수가 지정되어 있다면

메서드를 호출할 때 매개변수 또한 입력해주어야 합니다.

 

 

메서드 오버로드

 

메서드는 오버로딩이라는 개념이 있습니다. 메서드의 이름이 같아도 요구하는 매개 변수가 다르면 호출 할 때 매개 변수에 따라 호출되는 메서드가 결정됩니다.  (리턴 타입은 무관함) 

자료형이 같더라도 변수의 갯수가 다르면 그것 또한 다른 취급

 

void PrintMethod(문자열 변수)
{
    Console.WriteLine(문자열 변수 출력);                                           //함수 호출   PrintMethod(문자열 변수); 
}

void PrintMethod(정수형 변수)
{
    Console.WriteLine(정수형 변수 출력);                                          //함수 호출         PrintMethod(정수형 변수); 
}



 

재귀호출

 

재귀호출은 함수가 자기 자신을 호출하는 것을 의미합니다. 

메서드에 메서드를 쌓고 종료될 시점에 역순으로 제거되는 형태를 하고 있습니다.

하지만 조건 설정을 잘못하여 무한 반복된다면 스택 오버플로우가 발생하는 위험이 있어 조건 설정을 꼭 확인해야합니다.

 

Count(10);

 

void Count(int n)
{
    if (n <= 0)
    {
        Console.WriteLine("시간 종료");
    }
    else
    {
        Console.WriteLine($"{ n }초");
        Count(n - 1);  
    }
}

 

 

'TIL' 카테고리의 다른 글

2024 09 25 TIL  (1) 2024.09.25
2024 09 24 TIL  (0) 2024.09.24
2024 09 20 TIL (조건문과 반복문)  (2) 2024.09.20
2024 09 19 TIL (C# 기초)  (0) 2024.09.20
2024 09 13 TIL (PlayerPrefs)  (0) 2024.09.13