JAVA 메소드, 파라미터

MINJU KIM·2023년 11월 19일

java 정리

목록 보기
4/6

https://tcpschool.com/java/java_methodConstructor_method

메소드

자바에서 클래스는 멤버(member)로 속성을 표현하는 필드(field)와 기능을 표현하는 메소드(method)를 가집니다.

그중에서 메소드(method)란 어떠한 특정 작업을 수행하기 위한 명령문의 집합이라 할 수 있습니다.

사용하는 이유 : 중복되는 코드의 반복적인 프로그래밍을 피할 수 있기 때문입니다.

문법
접근제어자 (반환타입) 메소드이름(매개변수목록=파라미터) { // 선언부
    // 구현부

}

1. 접근 제어자 : 해당 메소드에 접근할 수 있는 범위를 명시합니다.

2. 반환 타입(return type) : 메소드가 모든 작업을 마치고 반환하는 데이터의 타입을 명시합니다.

3. 메소드 이름 : 메소드를 호출하기 위한 이름을 명시합니다.

4. 매개변수 목록(parameters) : 메소드 호출 시에 전달되는 인수의 값을 저장할 변수들을 명시합니다.

5. 구현부 : 메소드의 고유 기능을 수행하는 명령문의 집합입니다.
package chap_06;

public class _01_Method {
    //메소드 정의
    public static void sayHello() {
        System.out.println("안녕하세요 메소드입니다.");
    }

    public static void main(String[] args) {
    //메소드 호출
        System.out.println("메소드 호출 전");
        sayHello();
        System.out.println("메소드 호출 후");
    }
}

//메소드 호출 전
//안녕하세요 메소드입니다.
//메소드 호출 후

전달자(파라미터)

파라미터는 메소드를 호출할 때 같이 끼워보내는 내용들을 말하는 것! 메소드 수행에 필요한 입력값을 저장하는 변수. return값이 없는 경우, 반환 타입은 void.

package chap_06;

public class _02_Parameter {
//전달값이 있는 메소드
    public static void power(int number){ //parameter, 매개변수
        int result = number * number;
        System.out.println(number + " 의 2승은 " + result);
    }

    public static void powerByExp(int number, int exponent){
        int result = 1;
        for (int i = 0; i < exponent; i++) {
            result *= number;
        }
        System.out.println(number + "의 " + exponent + "승은 " + result);
    }

    public static void main(String[] args) {
        //전달값, 파라미터
        //2 -> 2 * 2 = 4 를 주는 거듭제곱해주는 메소드 만들 것.
        power(2);
        power(3);
        //power메소드를 수행하는데 넘버는 2를 넣어서 활용한다.

        powerByExp(2,3); //2 * 2 *2
        powerByExp(3,3); //2 * 2 *2
    }
}
/*2 의 2승은 4
3 의 2승은 9
2의 3승은 8
3의 3승은 27*/

static

메인 메소드 안에서 메소드를 실행하려면 static을 붙이면 된다.

public static int sub(int num1, int num2) {
	return num1 - num2;
}


public static void main(String[] args) {
	int result = sub(1, 2);
	System.out.println(result);
}

0개의 댓글