목차
1. 메소드 정의
📌 메소드(Method)
프로그램에서 어떤 작업을 수행하도록 정의된 코드의 묶음입니다.
쉽게 말해, 기능을 담은 블록입니다.
예를 들어 "출력하기", "계산하기", "값을 반환하기" 등
특정 작업을 수행하는 코드를 따로 분리해 메소드로 만들 수 있습니다.
2. 메소드 사용 이유
- 중복 제거: 같은 동작을 여러 번 쓸 필요 없이 한 번만 정의해서 재사용할 수 있습니다.
- 유지보수 용이: 코드가 잘게 나뉘어 있으므로 수정이 쉬워집니다.
- 가독성 향상: 이름만 보고도 해당 블록이 어떤 기능을 하는지 파악할 수 있습니다.
3. 메소드 호출 흐름 설명
메소드는 호출된 순서에 따라 실행되며, 한 메소드가 다른 메소드를 호출할 수 있습니다.
예를 들어,
- main() → methodA() → methodB()
순으로 호출되었다면, 실행이 끝날 때는
- methodB() → methodA() → main()
순으로 되돌아갑니다.
즉, 먼저 호출된 메소드가 나중에 종료됩니다.
4. Stack 메모리와 호출 순서
자바에서 메소드가 호출되면, 실행을 위해 Stack 메모리 영역에 쌓입니다.
이 구조는 아래와 같은 흐름을 따릅니다:
- 메소드가 호출될 때 → Stack에 저장
- 메소드가 종료될 때 → Stack에서 제거
- 마지막으로 호출된 메소드가 가장 먼저 종료됩니다 (LIFO 구조)
5. 메소드 호출 흐름 비교
public class Application {
public static void main(String[] args) {
System.out.println("main() 시작됨");
Application app = new Application();
app.methodA();
System.out.println("main() 종료됨");
}
public void methodA() {
System.out.println("methodA() 시작됨");
methodB();
System.out.println("methodA() 종료됨");
}
public void methodB() {
System.out.println("methodB() 시작됨");
System.out.println("methodB() 종료됨");
}
}
main() 시작됨
methodA() 시작됨
methodB() 시작됨
methodB() 종료됨
methodA() 종료됨
main() 종료됨
📌 호출 순서 요약
- main() → methodA() → methodB() 순서로 호출
- methodB() 종료 → methodA() 종료 → main() 종료 순서로 복귀
마무리
다음 게시글에서는 메소드 선언과 호출 구조에 대해 학습하겠습니다.
'study > Programming' 카테고리의 다른 글
| [JAVA 기초] 매개변수와 전달인자 (1) | 2025.04.18 |
|---|---|
| [JAVA 기초] 메소드 선언과 호출 구조 (1) | 2025.04.17 |
| [JAVA 기초] 비교 연산자와 논리 연산자 (1) | 2025.04.15 |
| [JAVA 기초] 증감 연산자와 조건(삼항) 연산자 (1) | 2025.04.14 |
| [JAVA 기초] 산술 연산자와 대입 연산자 (1) | 2025.04.13 |