4) 함수

SOCICAL·2024년 6월 30일

android

목록 보기
15/20
post-thumbnail
  • 특정 작업을 수행하기 위해 작성된 코드 블록이다.
  • 함수를 사용하면 코드의 재사용성이 높아지고, 프로그램 구조가 더 명확해진다.

# 함수 정의

[접근제어자] [반환형] 함수이름(매개변수들) {
    // 함수 몸체
    // 실행할 코드들
}
  • 접근제어자 (Access Modifier): 함수의 접근 범위를 결정한다. public, private, protected, default(명시하지 않을 때) 등이 있습니다.
  • 반환형 (Return Type): 함수가 반환하는 값의 타입을 지정한다. 반환값이 없을 때는 void를 사용합니다.
  • 함수이름 (Method Name): 함수의 이름으로, 소문자로 시작하는 명사나 동사를 주로 한다.
    매개변수 (Parameters): 함수가 호출될 때 전달되는 값을 받기 위한 변수이다. 여러 개일 경우 쉼표로 구분한다.

- 예제: 기본 함수 정의 및 호출

  • 다음은 간단한 예제이다. 두 숫자의 합을 계산하는 함수를 정의하고 호출하는 코드이다.
public class Main {

    // 두 숫자의 합을 계산하는 함수
    public static int add(int a, int b) {
        return a + b;
    }

    public static void main(String[] args) {
        int result = add(5, 3); // 함수 호출
        System.out.println("5 + 3 = " + result); // 결과 출력
    }
}

- 설명

  • public static int add(int a, int b): add 함수는 두 개의 int 매개변수를 받아 int 값을 반환한다.
  • int result = add(5, 3);: add 함수를 호출하여 결과를 result 변수에 저장한다.
  • System.out.println("5 + 3 = " + result);: 결과를 출력한다.

# 함수의 다양한 형태

- 반환값이 없는 함수

  • 반환값이 없는 함수는 void를 반환형으로 사용합니다.
public class Main {

    // 인사를 출력하는 함수
    public static void greet(String name) {
        System.out.println("Hello, " + name + "!");
    }

    public static void main(String[] args) {
        greet("Alice"); // 함수 호출
    }
}

- 매개변수가 없는 함수

  • 매개변수가 없는 함수는 빈 괄호를 사용한다.
public class Main {

    // 인사 메시지를 반환하는 함수
    public static String getGreeting() {
        return "Hello, World!";
    }

    public static void main(String[] args) {
        String message = getGreeting(); // 함수 호출
        System.out.println(message); // 결과 출력
    }
}

- 오버로딩된 함수

  • 동일한 이름을 가지지만 매개변수가 다른 여러 함수를 정의할 수 있다. 이를 함수 오버로딩이라고 한다.
public class Main {

    // 두 숫자의 합을 계산하는 함수
    public static int add(int a, int b) {
        return a + b;
    }

    // 세 숫자의 합을 계산하는 함수
    public static int add(int a, int b, int c) {
        return a + b + c;
    }

    public static void main(String[] args) {
        int result1 = add(5, 3); // 두 매개변수를 가진 함수 호출
        int result2 = add(1, 2, 3); // 세 매개변수를 가진 함수 호출
        System.out.println("5 + 3 = " + result1);
        System.out.println("1 + 2 + 3 = " + result2);
    }
}

0개의 댓글