6-1 메소드에 대한 이해와 메소드의 정의
- 메소드는 기능 상자이다
- 자바에서 정한 규칙: 프로그램의 시작은 main에서부터
- 반환형을 지정함으로써 미리 메모리 공간 만들어 놓는다
- 파라미터가 없을 수도 있고 파라미터가 1개 이상 있을 수도 있다
- return은 값의 반환을 명령하는 키워드이면서 메소드 종료의 의미도 있다
- 반환형이 void여도 return으로 값의 반환 없이 종료할 수 있다
6-2 변수의 스코프
- 지역은 중괄호에 의해 형성된다
- 지역 변수는 속한 지역을 벗어나면 소멸된다
- 파라미터도 지역 변수이다
6-3 메소드의 재귀호출
- f(n) = { n * f(n-1) (n >= 2), 1 (n = 1) }
- 재귀의 함수식 정의를 코드로 바꿔줄 수 있다
public int factorial(int n) {
if(n == 1) {
return 1;
} else {
return n * factorial(n-1);
}
}
- '원본이 존재하고 재귀호출을 만날 때마다 원본으로부터 사본이 생성되는 것이다'로 이해할 수도 있다