nme.kr

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
프로그램:java:syntax [2022/01/01 00:18]
clayeryan@gmail.com [변수에 값을 할당할 때 주의할 것들]
프로그램:java:syntax [2023/07/13 17:29] (현재)
clayeryan@gmail.com ↷ 문서가 programmer:java:syntax에서 프로그램:java:syntax(으)로 이동되었습니다
줄 133: 줄 133:
 파일은 빈 줄이나 다른 구역임을 나타내주는 주석으로 나누어지는 여러 구역(section)들로 구성되어 있다.\\  파일은 빈 줄이나 다른 구역임을 나타내주는 주석으로 나누어지는 여러 구역(section)들로 구성되어 있다.\\ 
 2,000 라인을 넘는 파일은 이해하기가 쉽지 않기 때문에 될 수 있으면 피해야 한다.\\  2,000 라인을 넘는 파일은 이해하기가 쉽지 않기 때문에 될 수 있으면 피해야 한다.\\ 
-적절하게 구성된 자바 프로그램의 예제는 아래 "11장의 1절 자바 소스파일 예제에서 볼 수 있다.\\ +적절하게 구성된 자바 프로그램의 예제는 아래 [[syntax#자바 소스 파일 예제|3.11.1 자바 소스파일 예제]]에서 볼 수 있다.\\ 
  
 === 자바 소스 파일 === === 자바 소스 파일 ===
줄 175: 줄 175:
  
 ^순서^클래스/인터페이스 선언의 구성요소^  설명  ^  ^순서^클래스/인터페이스 선언의 구성요소^  설명  ^
-|1|문서화 주석|(/*... */) 이 주석이 포함하는 정보들은 아래 "5장의 2절 문서화(Documentation) 주석"을 참고 |+|1|문서화 주석|(/*... */) 이 주석이 포함하는 정보들은 아래 [[syntax#문서화(Documentation) 주석|3.5.2 문서화(Documentation) 주석]]을 참고 |
 |2|클래스/인터페이스 문|  | |2|클래스/인터페이스 문|  |
 |3|구현 주석|(/* ... */) 이 주석은 클래스/인터페이스 문서화 주석에 적합하지 않은 하나의 클래스/인터페이스에만 해당하는  정보들을 포함해야 한다.| |3|구현 주석|(/* ... */) 이 주석은 클래스/인터페이스 문서화 주석에 적합하지 않은 하나의 클래스/인터페이스에만 해당하는  정보들을 포함해야 한다.|
줄 284: 줄 284:
   *문서화 주석   *문서화 주석
  
-구현 주석은 /* ... */ 과 <nowiki>//</nowiki> 에 의해서 경계가 결정되는 C++에서의 주석과 동일하다. 또한 구현 주석은 각각의 구현에 대한 추가적인 설명이 필요할 때, 또는 코드를 주석 처리할 때 사용할 수 있다.+구현 주석은 /* ... */ 과 <nowiki>//</nowiki> 에 의해서 경계가 결정되는 <nowiki>C++</nowiki>에서의 주석과 동일하다. 또한 구현 주석은 각각의 구현에 대한 추가적인 설명이 필요할 때, 또는 코드를 주석 처리할 때 사용할 수 있다.
  
 문서화 주석은 단지 자바에서만 사용되며, /* ... */ 에 의해서 경계가 결정된다. 자바 소프트웨어에 포함되어 있는 javadoc 툴을 사용하면 문서화 주석을 포함하는 HTML 파일을 자동으로 만들 수 있다. 또한 문서화 주석은 소스 코드가 없는 개발자들도 읽고 이해할 수 있도록, 실제 구현된 코드와는 상관이 없는 코드의 명세 사항(specification)을 포함한다. 문서화 주석은 단지 자바에서만 사용되며, /* ... */ 에 의해서 경계가 결정된다. 자바 소프트웨어에 포함되어 있는 javadoc 툴을 사용하면 문서화 주석을 포함하는 HTML 파일을 자동으로 만들 수 있다. 또한 문서화 주석은 소스 코드가 없는 개발자들도 읽고 이해할 수 있도록, 실제 구현된 코드와는 상관이 없는 코드의 명세 사항(specification)을 포함한다.
줄 299: 줄 299:
 프로그램은 다음과 같은 4가지 형식의 구현 주석을 포함할 수 있다. 프로그램은 다음과 같은 4가지 형식의 구현 주석을 포함할 수 있다.
  
-  - **블록(Block) 주석** +  - 블록(Block) 주석 
-  - ** 한 줄(Single-Line) 주석** +  - 한 줄(Single-Line) 주석 
-  - **꼬리(Trailing) 주석** +  - 꼬리(Trailing) 주석 
-  - **줄 끝(End-Of-Line) 주석**+  - 줄 끝(End-Of-Line) 주석
  
 ==블록(Block) 주석== ==블록(Block) 주석==
줄 370: 줄 370:
 </code> </code>
 === 문서화(Documentation) 주석 === === 문서화(Documentation) 주석 ===
-* 여기에 나오는 주석들은 아래 "11장 1절 자바 소스 파일 예제를 참고하기 바란다.+* 여기에 나오는 주석들은 아래 [[syntax#자바 소스 파일 예제|3.11.1 자바 소스파일 예제]]를 참고하기 바란다.
  
 문서화 주석은 다음 5가지를 설명한다. 문서화 주석은 다음 5가지를 설명한다.
줄 817: 줄 817:
 == 괄호 == == 괄호 ==
  
 +연산자 우선순위 문제를 피하기 위해서 복합 연산자를 포함하는 경우에는 자유롭게 괄호를 사용하는 것이 좋은 생각이다(작성자는 연산자 우선 순위를 확실하게 알고 있다고 할지라도, 다른 프로그래머에게는 생소할 수 있다는 것을 기억하자).
 +
 +<code java>
 +if (a == b && c == d)     // 이렇게 사용하지 말자
 +if ((a == b) && (c == d)) // 이렇게 사용하자
 +</code>
 == 반환 값 == == 반환 값 ==
 +
 +프로그램의 구조와 목적이 일치해야 한다.
 +
 +<code java>
 +// 이렇게 사용하지 말자
 +if (booleanExpression) {
 +    return true;
 +} else {
 +    return false;
 +}
 +</code>
 +
 +<code java>
 +// 다음과 같이 써야 한다
 +return booleanExpression;
 +// 이렇게 사용하지 말자
 +if (condition) {
 +    return x;
 +}
 +return y;
 +</code>
 +
 +<code java>
 +// 다음과 같이 써야 한다
 +return (condition ? x : y);
 +</code>
  
 == 조건 연산자 '?' 이전에 나오는 식(expression) == == 조건 연산자 '?' 이전에 나오는 식(expression) ==