Minwoo Dev.

[Java] 메서드 , 메소드 본문

Java

[Java] 메서드 , 메소드

itisminu 2023. 11. 16. 21:41
728x90
반응형
SMALL

아마 우리는 모두 "함수"라는 개념에 대하여 알고 있을 것이다.

어떤 값을 입력하면 연산을 하여 결과값을 출력하는 일련의 과정이 함수에서 이루어진다.

함수

위 그림은 36이라는 입력값에 4를 더하여 40이라는 값을 출력하는 함수이다.

프로그래밍에서도 함수라는 개념을 사용하는데, 프로그래밍에서의 함수는 특정 기능들을 묶어둔 집합이라고 볼 수 있다.

예를들어 인사말을 출력하는 함수가 있다면, 그 함수는 인사말을 출력할 것이다.

 

Java에서는 이 함수를 "메소드"라는 이름으로 사용한다.

public class test {
    
    public static 함수의 자료형   함수이름 (매개변수) {
        실행 코드
    }
    
    
}

 

함수의 기본적인 형태이다. 

public static 뒤에 함수의 자료형, 함수이름, 괄호 안에 매개변수를 적는 형태가 기본적이다.

 

위의 함수 그림과 같은 함수를 코드로 작성해보겠다.

public class test {

    public static int plus (int n) {
        return n+4;
    }

    public static void main(String[] args) {
        int result = plus(36);
        System.out.println(result);

    }
}

 

우선, 함수 이름은 plus로 정했다.

그리고 이 함수의 자료형은 int형으로 정했고, 함수가 처음에 입력값을 받아와야 하므로 int n을 매개변수로 지정했다.

(함수의 자료형은 반환값인 return 뒤의 자료형과 같아야 한다. 정수를 반환하면 정수형 함수로, 실수를 반환하면 실수형 함수로 만들어야한다.)

반환값은 n에다가 4를 더한 값을 반환하도록 설정했다.

 

그리고 나서 main함수에서 plus 함수를 호출하였고, 이 함수의 반환값이 존재하므로 result라는 정수형 변수를 만들어 저장했다.

그리고 result를 출력했다.

정상적으로 40이라는 값이 출력된다.

 

하지만 함수는 꼭 매개변수와 반환값이 필요한 것이 아니다.

 

  • 매개변수 X, 반환값 X
public class test {

    public static void Hello() {
        System.out.println("Hello!");
    }

    public static void main(String[] args) {
        Hello();
    }
}

 

위와 같이 그냥 출력만 하는 메소드같은 경우에는 매개변수를 받아올 필요가 없고, 반환값을 반환할 필요도 없다.

반환값 없음 → public static void Hello()

매개변수 불필요 → public static void Hello(공백)

 

 

  • 매개변수 O, 반환값 X
public class test {

    public static void plus(int n1, int n2) {
        int result = n1 + n2;
        System.out.println(result);
    }

    public static void main(String[] args) {
        plus(3,4);
    }
}

 

매개변수 O → public static void plus(int n1, int n2)

반환값 X → public static void plus(int n1, int n2)

 

 

이렇게 메소드를 활용하는 방식들이 여러 가지가 있다는 것을 알 수 있다.

메소드를 사용하면 기능별로 나누어 더 깔끔하게 코드를 작성할 수 있다.

 

잘 공부하여 활용하길 바란다.

 

728x90
반응형
LIST

'Java' 카테고리의 다른 글

[Java] 퀴즈 6. 개인정보 가리기  (0) 2023.11.21
[Java] 메소드 오버로딩  (1) 2023.11.17
[Java] 퀴즈 5 . 구매 가능 신발 사이즈 옵션  (0) 2023.11.15
[Java] 다차원 배열  (0) 2023.11.15
[Java] 배열 기본  (0) 2023.11.15