본문 바로가기

Java/Chapter 06. 메소드와 변수의 스코프

(3)
[Java] 06.03 - 메소드의 재귀 호출 들어가며 자바는 메소드의 '재귀적 호출'을 지원한다. 따라서 이에 대해 설명할 텐데, 이 내용이 부담된다면 본서를 조금 더 공부하다가 접근을 해도 괜찮다. 메소드의 재귀적 호출은 자료구조와 알고리즘의 구현에 유용한 문법이므로 조금 천천히 이해해도 괜찮다. 수학적 측면에서의 재귀적인 사고 재귀함수와 관련해서는 귀찮으니 나중에 다루겠다.
[Java] 06.02 - 변수의 스코프 들어가며 변수의 스코프(scope)란 임의의 변수에 대한 '변수의 접근 가능 영역' 또는 '변수가 소멸되지 않고 존재할 수 있는 영역'을 의미한다. 가시성(visibility) 지금까지 중괄호가 사용되었던 때를 정리해 보면 다음과 같다. if문 또는 if ~ else문에서 사용되었다. 다양한 반복문과 switch문에서 사용되었다. 메소드의 몸체 부분을 감싸는 용도로 사용되었다. 이처럼 중괄호는 다양한 경우에 사용된다. 그런데 이렇듯 중괄호로 특정 영역을 감싸면, 해당 영역은 변수에 관한 별도의 스코프를 형성하게 된다. 예를 들어서 다음과 같이 중괄호 내에 변수 num이 선언되면, if (...) { int num = 5; . . . } 이 변수 num은 중괄호 내에서만 접근이 가능하며, 중괄호를 벗어나는..
[Java] 06.01 - 메소드에 대한 이해와 메소드의 정의 들어가며 지금까지 예제를 작성할 때마다 main이라는 이름의 메소드 내에 실행할 내용을 담아 두었다. 이러한 main 메소드의 실행 원리만 이해하더라도 메소드의 기본 성질을 파악할 수 있다. 따라서 main에 대한 관찰에서 부터 이야기를 시작하고자 한다. main 메소드에 대해서 우리가 아는것과 모르는 것 앞서 main이 메소드이고, 이 메소드는 클래스의 내부에 존재해야 함을 간단히 보였다. 따라서 다음 메소드를 보면서 우리가 아는 것과 모르는 것들을 정리해 보겠다. public class temp { public static void main(String[] args) { int num1 = 5; int num2 = 7; System.out.println("5 + 7 = " + (num1+num2));..