< 메소드 >
- 한 번 정의해두고, 필요할때마다 호출해서 사용
- '호출할 때의 인자값'이 '매개변수의 자료형', '매개변수 개수'와 일치해야 함
[ 표현법 ]
접근제한자 (예약어) 반환형 메소드식별자(매개변수) {
메소드 호출시 실행할 코드;
( return 반환값; )
}
// 예약어, 매개변수, return문 부분(반환형 - void)은 생략 가능
* 접근제한자 : 호출 할 수 있는 범위를 제한
* 반환형 : 메소드의 결과값(반환값)의 자료형 - void : 돌려줄 값이 없는 경우 사용
* 매개변수 : 메소드 호출시, 입력값으로 넣어주는 값을 받아주는 변수
해당 메소드 실행중에만 사용이 가능. 생략 가능
// 1. 매개변수도 없고 반환값도 없는 메소드
public void method1() {
int sum = 0;
for(int i = 1; i <= 10; i++) {
sum += i; // sum = sum + i
}
System.out.println(sum);
// return; void일 경우 return 생략 - JVM이 자동으로 만들어줌
}
// 2. 매개변수는 없고 반환값은 있는 메소드
public int method2() {
// 1 ~ 100까지의 랜덤값을 발생시켜서 돌려주고싶다.
return (int)(Math.random() * 100) + 1;
}
// 3. 매개변수는 있고 반환값은 없는 메소드
public void method3(int num1, int num2) {
int min = 0;
int max = 0;
if(num1 < num2) {
min = num1;
max = num2;
} else {
min = num2;
max = num1;
}
System.out.println("최솟값 : " + min + ", 최댓값 : " + max);
}
// 4. 매개변수도 있고 반환값도 있는 메소드
public int method4(int a, int b) {
return a + b; // 재사용 가능성 없으면 변수생성X
}
< static 메소드 >
- 'static' 예약어를 사용하는 메소드
- 생성자를 사용하여 객체를 생성하지 않아도 메소드 호출 가능
[ 호출 ] 클래스이름.메소드이름();
ex) Math.random();
// 1.
public static void method1() {
System.out.println("매개변수랑 반환값이 둘 다 없는 메소드");
}
// 2.
public static String method2() {
return "매개변수는 없지만 반환값은 있는 메소드";
}
// 3.
public static void method3(String name, int age) {
System.out.println("매개변수는 있지만 반환값은 없는 메소드");
System.out.println("출력구문 : " + name + "님은 " + age + "살 입니다.");
}
// 4.
public static String method4(String name, int age) {
System.out.println("매개변수와 반환값이 둘 다 있는 메소드");
return name + "님 안녕하세요! " + age + "살 이시네요!";
}
* 주로
반환형이 없는 메소드 : 출력문을 메소드 내부에 작성
반환형이 있는 메소드 : 호출하는 부분에서 출력문을 작성
'개발 > Java' 카테고리의 다른 글
[Java] 자바 - 객체배열(Object Array) (0) | 2022.09.14 |
---|---|
[Java] 자바 - 오버로딩(Overloading) (0) | 2022.09.14 |
[Java] 자바 - 클래스 / 클래스 구조 - 필드, 생성자, 메소드 / 접근제한자 / 객체지향 프로그래밍 (0) | 2022.09.13 |
[Java] 자바 - 전역변수 - 클래스 변수(static변수) / 지역변수 / 상수 필드 (1) | 2022.09.13 |
[Java] 자바 - 캡슐화(Encapsulation) (0) | 2022.09.13 |