Page 15 -
P. 15

•  조건문은 실행 흐름을 바꿀 수 있게 해준다. 어떤 조건에 따라 두 블록의 명령문 중에서 어느                            1
                         하나만 선택적으로 실행될 수 있게 한다.
                       •  반복문은 명령문의 동작 방식에 좀 더 큰 변화를 준다. 특정 조건이 만족되는 동안 해당 블록의                           기초 개념
                         명령문을 계속해서 반복 실행한다.
                       •  함수 호출 구문과 리턴문은 정적 메서드를 사용하여 코드를 구조화하고 실행 흐름을 제어할 수
                         있는 추가적인 방법을 제공한다.

                     프로그램은 선언문, 대입문, 조건문, 반복문, 함수 호출 그리고 리턴과 같은 명령문의 나열로 만들어
                     진다. 프로그램은 중첩된 구조를 가질 때가 많다. 조건문이나 반복문 블록 안에 또 다른 조건문이나

                     반복문이 들어갈 수도 있다. 예를 들어 rank() 함수 안에 있는 while 반복문은 조건문인 if 구문을
                     내부에 가지고 있다. 이제 이들 명령문에 대해 하나씩 알아본다.
                     선언문  선언문은 변수의 이름에 데이터 타입을 컴파일 시점에 연결해준다. 자바에서는 변수를 사용
                     하려면 반드시 데이터 타입과 이름을 지정해야만 한다. 그렇게 함으로써 어떤 연산이든 사용되는 데
                     이터 타입을 명시적으로 지정할 수 있다. 자바는 강한 형(타입) 안정성을 가진 언어 중 하나이다. 자

                     바 컴파일러는 데이터 타입에 일관성이 없으면 오류로 처리한다(예를 들어 boolean 타입 데이터와
                     double 타입 데이터를 곱셈 연산에 적용할 수 없다). 선언문은 선언되는 변수가 처음으로 이용되기
                     전에만 위치하면 된다. 보통은 변수가 처음 이용되는 명령문의 바로 앞에 선언문을 둔다. 변수의 스
                     코프(scope)는 프로그램 안에서 해당 변수가 유효한(사용할 수 있는) 부분을 지칭한다. 보통, 변수의
                     스코프는 그 변수가 선언된 이후부터 선언문이 속한 블록이 끝나는 부분까지이다.

                     대입문  대입문은 어떤 데이터 타입의 값(또는 표현식의 결괏값)을 변수에 연결시킨다. 자바에서 c =
                     a + b라고 쓰면 수학에서의 동치를 표현한 것이 아니라 a와 b를 합한 값을 c에 대입하라는 실행 명령
                     을 쓴 것이다. 이 명령어가 실행된 후에는 수학적으로도 동치가 되지만 여기서 중요한 것은 이 명령
                     문이 변수 c의 값을 변경하는(필요할 경우) 역할을 한다는 점이다. 대입문의 좌항은 반드시 변수 하
                     나여야 한다. 우항은 임의의 표현식이되 그 결괏값의 데이터 타입은 좌항과 같아야 한다.

                     조건문  입력값이 다를 때는 다른 작업을 해야 하는 경우가 많다. 이렇게 조건에 따라 다른 작업을 해
                     야 할 때의 처리 방법 중 하나로 자바에서는 if 문을 사용할 수 있다.

                        if ( <boolean 표현식>) { <블록 명령문> }


                     위 구문은 앞으로 이 책에서 많이 보게 될 코드 템플릿 형태를 띄고 있다. 자바 언어의 특정 구문의
                     사용법을 설명할 때 이러한 템플릿을 사용하게 된다. 꺾쇠괄호(< >) 안에는 앞서 살펴보았던 여러 명
                     령문이 들어갈 수 있다. <boolean 표현식>은 비교 연산 등 boolean 타입 결괏값을 가지는 표현식이
                     들어갈 수 있다는 의미이고, <블록 명령문>은 임의의 자바 명령문의 나열이 있을 수 있다는 의미이
                     다. <boolean 표현식>과 <블록 명령문>에 대해서 정규적인 정의를 사용할 수도 있지만 불필요하게
                     깊은 내용을 다루어야 하기 때문에 여기서는 단순하게 표현하기로 한다. if 구문의 의미는 단어 의미
                     그대로이기 때문에 이해하기 쉽다. if 구문의 boolean 표현식이 true면 if 구문에 속한 블록의 코드
                     가 실행되고 false면 그 블록의 코드가 실행되지 않는다.



                                                                                              027
   10   11   12   13   14   15   16   17   18   19   20