일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 프로그래머스 #조건에 맞는 회원수 구하기 #mysql #알고리즘 #코린이 #개발자 #study
- 프로그래머스 #mysql #알고리즘 #이름이 있는 동물의 아이디 #코린이 #개발자 #study
- 프로그래머스 #mysql #알고리즘 #자동차 대여 기록에서 장기/단기 대여 구분하기 #코린이 #개발자 #study
- mysql #min() #max() #최소값 #최대값 #코린이 #개발자 #study
- 프로그래머스 #가장 큰 물고기 10마리 구하기 #mysql #알고리즘 #코린이 #개발자 #study
- 프로그래머스 #mysql #알고리즘 #코린이 #개발자 #study
- 프로그래머스 #mysql #알고리즘 #어린 동물 찾기 #코린이 #개발자 #study
- 프로그래머스 #python 개발자 찾기 #알고리즘 #mysql #코린이 #개발자 #study
- 프로그래머스 #mysql #동명 동물 수 찾기 #알고리즘 #코린이 #개발자
- 백준 #4153 #직각삼각형 #알고리즘 #자바 #java #코린이 #개발자 #study
- 백준 #네 번째 점 #3009 #자바 #java #알고리즘 #코린이 #개발자 #study
- 백준 #일곱 난쟁이 #2309 #자바 #java #알고리즘 #코린이 #개발자 #study
- 프로그래머스 #잡은 물고기의 평균 길이 구하기 #mysql #알고리즘 #코린이 #개발자 #study
- 프로그래머스 #mysql #12세 이하인 여자 환자 목록 출력하기 #알고리즘 #코린이 #개발자 #study
- 프로그래머스 #나이 정보가 없는 회원 수 구하기 #mysql #알고리즘 #코린이 #개발자 #study
- 프로그래머스 #아픈 동물 찾기 #mysql #알고리즘 #코린이 #개발자 #study
- 프로그래머스 #mysql #경기도에 위치한 식품창고 목록 출력하기 #알고리즘 #코린이 #개발자 #study
- 프로그래머스 #모음 제거 #알고리즘 #자바 #java #코린이 #개발자 #study
- 프로그래머스 #잡은 물고기 중 가장 큰 물고기의 길이 구하기 #알고리즘 #mysql #코린이 #개발자 #study
- 프로그래머스 #mysql #흉부외과 또는 일반외과 의사 목록 출력하기 #알고리즘 #코린이 #개발자 #study
- 프로그래머스 #알고리즘 #mysql #인기있는 아이스크림 #코린이 #개발자 #study
- 프로그래머스 #한 해에 잡은 물고기 수 구하기 #mysql #알고리즘 #코린이 #개발자 #study
- 코린이 #개발자 #study
- 특정 옵션이 포함된 자동차 리스트 구하기 #코린이 #개발자 #study
- 프로그래머스 #동명 동물 수 찾기 #mysql #데이터베이스 #db #코린이 #개발자 #알고리즘
- 백준 #
- 프로그래머스 #mysql #역순 정렬하기 #알고리즘 #코린이 #개발자 #study
- 프로그래머스 #과일로 만든 아이스크림 고르기 #mysql #알고리즘 #코린이 #개발자 #study
- 백준 #다이얼 #5622 #알고리즘 #자바 #java #코린이 #개발자 #study
- 프로그래머스 #알고리즘 #mysql #
- Today
- Total
luke
[자바/Java] - 메서드 (Method) 본문
메서드(Method)
자바에서는 함수를 메서드(Method)라 한다.
바로 메서드를 사용하지 않은 코드와 메서드를 사용한 코드를 보겠다.
<메서드를 사용하지 않은 코드>
public class Method {
public static void main(String[] args) {
//계산1
int a = 4;
int b = 6;
System.out.println(a + "+" + b);
int sum1 = a + b;
System.out.println("결과1 출력:" + sum1);
//계산2
int x = 30;
int y = 20;
System.out.println(x + "+" + y);
int sum2 = x + y;
System.out.println("결과2 출력:" + sum2);
}
}
위 코드를 보면 같은 연산을 두 번 한다는걸 볼수 있다. 또 계산1,계산2 부분이 거의 같다. (a + b), (x + y) 결국은 둘다 합을 구하는 계산 인것이다. 보기만해도 반복하는걸 알수 있고 수정 또는 제거하고 싶다면 해당 코드를 다 찾아다니면서 모두 수정해야 할것이다. 이런 문제를 깔끔하게 해결하기 위해 메서드를 사용해 코드 작성을 한다.
<메서드를 사용한 코드>
public class Method1Ref {
public static void main(String[] args) {
int sum1 = add(4, 6);
System.out.println("결과1 출력:" + sum1);
int sum2 = add(30, 20);
System.out.println("결과2 출력:" + sum2);
}
//add 메서드
public static int add(int a, int b) {
System.out.println(a + "+" + b);
int sum = a + b;
return sum;
}
}
중복이 제거되고, 코드가 깔끔해진 것을 볼수 있다.
"add" 부분이 메서드 이다. 이것을 메서드를 정의한다고 표현한다.
메서드는 크게 메서드 선언과 메서드 본문으로 나눌 수 있다.
메서드 선언
public static int add(int a, int b)
메서드의 선언 부분으로, 메서드 이름, 반환 타입, 파라미터(int a, int b) 목록을 포함한다.
메서드 선언 정보를 통해 다른 곳에서 해당 메서드를 호출할 수 있다.
public static
- public: 다른 클래스에서 호출할 수 있는 메서드라는 뜻
- static: 객체를 생성하지 않고 호출할 수 있는 정적 메서드라는 뜻
int add(int a, int b)
- int: 반환 타입을 정의한다. 메서드의 실행 결과를 반환할 때 사용할 반환 타입을 지정한다.
- add: 메서드에 이름을 부여한다. 이 이름으로 메서드를 호출
- (int a, int b): 메서드를 호출할 때 전달하는 입력 값을 정의한다. 이 변수들은 해당 메서드 안에서만 사용된다.
메서드 본문
{
System.out.println(a + "+" + b);
int sum = a + b;
return sum;
}
- 메서드가 수행하는 코드 블록이다.
- 메서드를 호출하면 메서드 본문이 순서대로 실행
- 메서드의 실행 결과를 반환하려면 "return"문을 사용해야 한다. "return"문 다음에 반환할 결과를 적어주면 된다.
ex) return sum; : sum 변수에 들어있는 값을 반환
메서드 호출
int sum1 = add(4, 6);
int sum2 = add(30, 20);
앞에 정의한 메서드를 호출해서 실행하려면 메서드 이름에 입력 값을 전달하면 된다.
매개변수가 없거나 반환 타입이 없은 경우
public static void main(String[] args) {
header();
System.out.println("프로그램 동작");
Footer();
}
public static void header() {
System.out.println("프로그램 시작");
}
public static void footer() {
System.out.println("프로그램 종료");
}
}
<실행결과>
프로그램 시작
프로그램 동작
프로그램 종료
"header()", "footer()" 메서드는 매개변수가 없고, 반환 타입도 없다.
매개변수가 없는 경우 위 코드와 같이 " header() " 매개변수를 비워두고 정의하면 된다. 호출 또한 " header(); "와 같이 비워두고 호출하면 된다.
반환타입이 없는 경우 " void "로 정의하면 되며, 호출 할때는 " header(); "와 같이 반환 타입이 없으므로 메서드만 호출하고 반환 값을 받지 않으면 된다.
* 모든 메서드는 항상 return 을 호출해야 한다. 하지만 반환 타입이 " void " 의 경우에는 예외로 생략해도 된다. 자바가 반환 타입이 없는 경우에는 return을 자동으로 마지막줄에 넣어준다. 참고로 return을 만나면 해당 메서드는 종료된다.
※ 출처: Inflearn 김영한-Java 강의 중
'Study > Java' 카테고리의 다른 글
[자바/Java] - 클래스(Class) (0) | 2024.01.06 |
---|---|
[자바/Java] - 연산자(2) (비교 연산자, 논리 연산자, 대입 연산자) (0) | 2024.01.02 |
[자바/Java] - 연산자(1) (산술 연산자, 증감 연산자) (2) | 2023.12.27 |
[자바/Java] - 배열 (Array) 정렬하기, (오름차순, 내림차순) (2) | 2023.12.21 |
[자바/JAVA] - 조건문2 (Switch문) (0) | 2023.12.19 |