메서드(Method)는 일련의 코드 블럭으로, 특정한 작업을 수행하기 위해 사용되는 독립적인 기능 단위
코드의 재사용성과 모듈화를 위해 사용되며, 필요할 때 호출되어 실행한다.
[접근 제한자] [리턴 타입] [메서드 이름]([매개변수]) { // 메서드 실행 코드 }
// 예시 1: 반환 값이 없는 메서드 public void SayHello() { Console.WriteLine("안녕하세요!"); } // 예시 2: 매개변수가 있는 메서드 public void GreetPerson(string name) { Console.WriteLine("안녕하세요, " + name + "님!"); } // 예시 3: 반환 값이 있는 메서드 public int AddNumbers(int a, int b) { int sum = a + b; return sum; }
메서드를 호출하기 위해서는 메시드 이름과 필요한 매개변수를 전달하여 호출
메서드 호출은 다음과 같은 형식으로 이루어진다.
[메서드 이름]([전달할 매개변수]); // ex) AddNumbers(10, 20);
호출 시 전달되는 매개변수는 메서드의 매개변수와 순서, 타입이 일치해야 한다.
메서드는 호출되면 해당 메서드의 실행 코드를 수행, 리턴 값이 필요할 경우 반환한다.
// 예제 void PrintFullName(string firstName, string lastName) { Console.WriteLine("Full Name: " + firstName + " " + lastName); } // 메서드 호출 PrintFullName("John", "Doe");
// 예제 int AddNumbers(int a, int b) { int sum = a + b; return sum; } // 메서드 호출 및 반환값 사용 int result = AddNumbers(10, 20); Console.WriteLine("Sum: " + result);
// 예제 void PrintMessage(string message) { Console.WriteLine("Message: " + message); } // 메서드 호출 PrintMessage("Hello, World!");
같은 이름 다른 동작의 메서드 오버로딩
// 예제 static void PrintMessage(string message) { Console.WriteLine("Message: " + message); } static void PrintMessage(int number) { Console.WriteLine("Number: " + number); } static void Main(string[] args) { // 메서드 호출 PrintMessage("Hello, World!"); // 문자열 매개변수를 가진 메서드 호출 PrintMessage(10); // 정수 매개변수를 가진 메서드 호출 }
// 재귀 호출 예시) static void Main(string[] args) { // 메서드 호출 CountDown(5); } static void CountDown(int n) { if (n <= 0) { Console.WriteLine("Done"); } else { Console.WriteLine(n); CountDown(n - 1); // 자기 자신을 호출 } }
static void Main(string[] args) { Console.WriteLine($"원의 넓이 : {getCircleArea(5): 0.00}"); Console.WriteLine($"사각형의 넓이 : {getSquareArea(10, 5)}"); } // 원의 넓이를 구하는 메서드 static double getCircleArea(double r) { double area = Math.PI * (r * r); return area; } // 사각형의 넓이를 구하는 메서드 static int getSquareArea(int a, int b) { int area = a * b; return area; }