최원종의 개발 블로그

함수 본문

Java/Java 객체지향

함수

chl6698 2026. 2. 24. 17:23

함수

함수(Function)는 프로그래밍에서 특정 작업을 수행하는 코드의 집합으로, 입력을 받아 처리 후 결과를 반환.

함수는 코드의 재사용성을 높이고, 프로그램의 구조를 체계적으로 관리할 수 있게 도와줌.

함수

 

함수는 하나의 기능을 수행하는 일련의 ★ 코드 묶음 ★이다.

구현된 함수는 호출하여 사용하고 호출된 함수는 기능이 끝나면 실행의 제어가 반환된다.

함수로 구현된 하나의 기능은 여러 곳에서 동일한 방식으로 호출되어 사용될 수 있다.

 

 

함수 설계하기

//함수는 이름,파라메터(매개변수), 반환 값, 함수 몸체(body)로 구성
int add(int num1, int num2) {
    int result;
    result = num1 + num2;
    return result;
}

 

 

함수 사용하기

public static void main(String[] args) {		
		// 함수 사용하기 
		add(5, 3); // 함수에 이름으로 호출 
		int resultAdd = add(100, 200);  
		// 여러번 재사용 가능, 리턴 타입이 있다면 결과값을 받을 수 있다
	}

 

 

함수 실습 코드 (1)

 

함수 실습 코드 (2)

package ch06;

public class FunctionTest2 {
    //코드의 진입점 -(메인함수)
    public static void main(String[] args) {
        int n1 = 10;
        int n2 = 20;

        int total = addNum(n1, n2);
        System.out.println("total : " + total);

        // String a = sayHello(greeting:"반가워"); void는 대입 연산자로 값을 받을 수 없다
        sayHello("반가워");

        double resultDouble = addDouble(1.1, 1.2, 1.3);
        System.out.println(":resultDouble : " + resultDouble);

        int resultCalcSum = calsSum();
        System.out.println("resultCalsSum : " + resultCalcSum);

    }//end of main function

    //함수 -선언(정의), 사용
    //1. 두 수를 받아 덧셈하는 기능- 함수
    public static int addNum(int n1, int n2) {
        int sum; //지역 변수 선언
        sum = n1 + n2;
        return sum; //실행의 제어권 반납
    }//end of addNum function

    //2. 문자하나 받아서 화면에 출력하는 함수를 만들어 보자.
    // void - 텅빈 -> 반환값이 아무것도 없을 때 지정
    public static void sayHello(String greeting) {
        System.out.println("^^ " + greeting);
    }

    //3. 소수점 세개를 받아서 덧셈하는 함수를 만들어보자. - 반환타입은 소수점으로(double)
    public static double addDouble(double d1, double d2, double d3) {
        return d1 + d2 + d3; //식이 들어오면 바로 반환
    }

    //4. 파라메터가 없는 함수를 만들어 보자.
    public static int calsSum() {
        int sum = 0;
        int i;
        for (i = 1; i <= 100; i++) {
            //1 + 2+ 3+ 4 ...
            //sum = sum+ 1; 복합대입연산자 사용
            sum += 1;
        }
        return sum;
    }
}//end of class
더보기
출력결과

 

함수 연습 문제

package ch06;

public class FunctionTest3 {
    //코드의 진입점 -(메인함수)
    public static void main(String[] args) {
        greet("최원종");
        System.out.println("-------------------");

        int square = square(8);
        System.out.println("문제 2번: " + square);
        System.out.println("----------------------");

        String signIfNumber = signOfNumber(1);
        System.out.println("문제 3번 : " + signIfNumber);
        System.out.println("-----------------------");

        boolean checkAdult = checkAdult(16);
        System.out.println("문제 4번 : " + checkAdult);

        System.out.println("-------------------");

        System.out.println("문제 5번 : " + findMax(10, 6));


    }//end of main

    //연습문제 1 인사말 출력하기
    public static void greet(String greeting) {
        System.out.println("안녕하세요[" + greeting + "] 님! ");
    }

    //연습문제 2 제곱 계산하기
    public static int square(int s1) {
        return s1 * s1;
    }

    //연습문제 3 수의 부호 판별
    public static String signOfNumber(int n1) {
        String t1;
        if (n1 == 0) {
            t1 = "ZERO";
        } else if (n1 == 1) {
            t1 = "positive";

        } else if (n1 == -1) {
            t1 = "negative";
        } else t1 = "다시선택";
        return t1;
    }

    //연습문제 4 나이 확인
    public static boolean checkAdult(int age) {
        return age > 18;
    }

    //연습문제 5 최대값 찾기 함수 (삼항연산자)
    public static int findMax(int a1, int a2) {
        int result = (a1 > a2) ? a1 : a2;
        return result;
    }

}//end of class
더보기
출력 결과

 

'Java > Java 객체지향' 카테고리의 다른 글

객체지향 프로그래밍(객체간 상호작용)  (1) 2026.02.25
생성자  (0) 2026.02.24
메서드  (0) 2026.02.24
클래스와 객체  (0) 2026.02.24
OPP(객체지향) 개념  (0) 2026.02.23