CodeGym/Java Blog/무작위의/자바 코멘트
John Squirrels
레벨 41
San Francisco

자바 코멘트

무작위의 그룹에 게시되었습니다
회원
주석은 실행되지 않는 프로그램의 일부입니다. 컴파일러는 의도된 것이 아니기 때문에 주석을 무시합니다. 이 문서는 "인간"의 언어로 작성되었으며 개발자나 개발에 참여한 사람들을 위해 프로그램, 프로그램의 일부, 한 줄 또는 방법을 설명하기 위한 것입니다. 대부분의 경우 댓글은 영어로 작성되는데 이는 일종의 전통입니다. 이 기사에서는 Java의 주석에 대해 설명하고 이를 올바르게 사용하여 귀하와 팀원의 삶을 더 쉽게 만드는 방법에 대해 설명합니다.

Java 주석: 왜 중요한가요?

그들은 프로그래머들이 자신의 코드에 주석을 달 때 극도로 게으르다고 말합니다. 그러나 이는 매우 중요한 기술이므로 이제 막 Java를 배우기 시작한 경우에도 이를 과소평가하지 마십시오. 주석이 잘 달린 코드는 주석이 없는 코드보다 훨씬 더 가치가 있습니다. 왜냐하면 그러한 프로그램은 유지 관리가 훨씬 쉽기 때문입니다. 대규모 프로젝트는 대부분 Java로 작성되기 때문에 유능한 주석 작성은 프로그래머가 다른 사람의 코드를 처리하는 것이 더 쉽기 때문에 개발 속도도 향상시킵니다. 다음을 수행하려면 의견이 필요합니다.
  • 코드를 이해하세요. 당신 또는 다른 사람의 것. 자신이 작성한 코드를 해독할 필요가 없다고 생각되면 한 달 전 또는 그 이전에 작성한 상대적으로 복잡한 프로그램을 열어보고 무엇을, 어디서, 왜 염두에 두었는지 빠르게 이해하십시오. 주석은 프로그램의 논리나 프로그램 블록을 설명하는 데 사용할 수 있을 뿐만 아니라 나중에 코드를 작업할 사람들을 위한 권장 사항을 남기는 데에도 사용할 수 있습니다. 이러한 유형의 주석을 설명이라고 부를 수 있습니다.

  • 객체의 목적, 입력 및 출력 매개변수(있는 경우), 개발자에 대한 데이터 및 코드 조각과 관련된 기타 중요한 사항에 대한 정보가 포함되어 있습니다. 이러한 주석은 모듈, 라이브러리, 프로시저 및 함수의 헤더에 있습니다. 문서 주석이라고 부를 수 있습니다.

  • 버그를 제어하고 코드를 개선하세요. 의심스러운 코드나 개선이 필요한 코드는 언제든지 주석 처리하고 나중에 다시 검토할 수 있습니다. 특정 문제를 다른 방법으로 해결할 수 있다는 생각이 들었는데 지금은 그럴 시간이 없다면 댓글에 이 아이디어를 적어주세요. 그렇지 않으면 새로운 코드의 압박으로 인해 잊어버릴 가능성이 높습니다.

Java의 주석 유형

주석에는 무엇이든 작성할 수 있다는 사실에도 불구하고 Java에는 특정 유형의 주석과 이를 사용하는 규칙이 있습니다. Java 주석에서는 다음과 같습니다.
  • 한 줄 주석
  • 여러 줄 주석
  • 문서 설명

한 줄 주석

가장 일반적인 Java 주석은 한 줄 주석입니다. 이러한 주석을 표시하려면 // 텍스트 앞에 이중 슬래시를 넣는 것으로 충분합니다 . 한 줄 주석은 주석 시작 부분에만 표시됩니다. 주석은 줄 끝까지 계속됩니다. 통사론:

//here is a single line comment.
이러한 유형의 Java 주석의 예를 들어 보겠습니다.

public class CommentsDemo1 {
   public static void main(String[] args) {
       System.out.println("This text is visible for Java compiler");
       //this text is single line comment 
//This one is also single line comment
//they both (and me) are invisible for compiler
   }
}
출력은 다음과 같습니다
이 텍스트는 Java 컴파일러에 표시됩니다.
일반적으로 한 줄 주석은 프로그램에서 주석이 달린 위치 위나 아래에 위치하며 때로는 같은 줄에 위치합니다. 주석이 무엇을 참조하는지 시각적으로 명확하게 표시하는 것이 중요합니다.

여러 줄 주석

때로는 Java 주석을 작성하는 데 한 줄이 충분하지 않은 경우도 있습니다. 예를 들어, 메서드 작동 방식이나 구현 중인 복잡한 수식을 설명해야 합니다. 이 경우 한줄 주석을 여러개 작성할 수도 있지만, 소위 다중줄 주석을 작성하는 것이 더 합리적일 것입니다. 양쪽에 /* */ 기호가 표시되어 있습니다 . 여러 줄 주석 구문:

/*This comment 
is
Multi line comment 
we can describe here 
what we need */
코드에서 여러 줄 주석의 예를 들어 보겠습니다.

public class RleTest {

   /*
   Run Length Encoding (RLE),  a data compression algorithm
   that replaces repeated characters (series)
   with one character and the number of its repetitions.
  
   this method is to decode a String using run-length encoding

    */
   private static String decodeRle(String encoded) {
       if (encoded.isBlank()) return "";
       StringBuilder result = new StringBuilder();
       int count = 0;
       char baseChar = encoded.charAt(0);
       for (int i = 1; i <= encoded.length(); i++) {
           char c = i == encoded.length() ? '$' : encoded.charAt(i);
           if (Character.isDigit(c)) {
               count = count * 10 + Character.digit(c, 10);
           } else {
               do {
                   result.append(baseChar);
                   count--;
               } while (count > 0);
               count = 0;
               baseChar = c;
           }
       }
       return result.toString();
   }
   public static void main(String[] args) {
       System.out.println(decodeRle("C3ecddf8"));
   }
}

Java 문서 설명

이는 문서 페이지를 생성하는 데 사용되는 특수한 유형의 Java 주석입니다. 일반적으로 개발자는 Java 소스 코드에서 HTML 형식으로 API 문서를 생성하기 위한 문서 생성기인 Javadoc을 사용하여 문서 주석을 작성합니다. Javadoc에서 사용하는 문서 형식은 Java 클래스를 문서화하기 위한 업계 표준이며 IntelliJ IDEA 및 Eclipse와 같은 가장 널리 사용되는 IDE는 자동으로 Javadoc HTML을 생성합니다. Java 문서 주석에는 다음 구문이 있습니다.

/**
Some important Javadoc comments here 
You don’t know it yet, but Javadoc rulez 

@author  Java Developer
*/
예는 다음과 같습니다. Java Short 클래스 의 일부입니다 . 그런데 IDE에서 모든 Java 클래스 코드를 볼 수 있습니다(예를 들어 Windows의 IntelliJ IDEA에서는 클래스나 메서드 이름에서 ctrl+LBM 또는 ctrl+b(Windows의 경우)를 누르기만 하면 됩니다).

package java.lang;

import jdk.internal.HotSpotIntrinsicCandidate;
import jdk.internal.misc.VM;

/**
* The {@code Short} class wraps a value of primitive type {@code
* short} in an object.  An object of type {@code Short} contains a
* single field whose type is {@code short}.
*
* <p>In addition, this class provides several methods for converting
* a {@code short} to a {@code String} and a {@code String} to a
* {@code short}, as well as other constants and methods useful when
* dealing with a {@code short}.
*
* @author  Nakul Saraiya
* @author  Joseph D. Darcy
* @see     java.lang.Number
* @since   1.1
*/
public final class Short extends Number implements Comparable<Short> {

   /**
    * A constant holding the minimum value a {@code short} can
    * have, -2<sup>15</sup>.
    */
   public static final short   MIN_VALUE = -32768;

   /**
    * A constant holding the maximum value a {@code short} can
    * have, 2<sup>15</sup>-1.
    */
   public static final short   MAX_VALUE = 32767;

   /**
    * The {@code Class} instance representing the primitive type
    * {@code short}.
    */
   @SuppressWarnings("unchecked")
다음은 이러한 설명이 포함된 잘 알려져 있고 모든 초보자에게 사랑받는 println() 메소드의 Java 코드입니다.

/**
* Prints a String and then terminate the line.  This method behaves as
* though it invokes {@link #print(String)} and then
* {@link #println()}.
*
* @param x  The {@code String} to be printed.
*/
public void println(String x) {
   if (getClass() == PrintStream.class) {
       writeln(String.valueOf(x));
   } else {
       synchronized (this) {
           print(x);
           newLine();
       }
   }
}
Javadoc에는 위 코드에서 볼 수 있는 @로 표시된 몇 가지 특수 Javadoc 태그가 있습니다. 이러한 Javadoc 태그의 예는 클래스 작성자의 이름을 추가하는 @author입니다. 또 다른 Javadoc 태그는 @입니다. 지정된 Java 버전 이후로 이 클래스가 사용되었음을 나타내는 주석을 추가하기 때문입니다. 좋은 Javadoc 문서를 작성하려면 지식과 경험(그리고 인내도!)이 필요합니다. 공식 문서 How to Write Doc Comments for the Javadoc Tool 에서 Javadoc에 대한 자세한 정보를 찾을 수 있습니다 .

추신: 실제 생활에서 나온 몇 가지 재미있는 댓글 예


/**
*Dear Maintainer
*
*Once you are done trying to 'optimize' this routine,
*and you have realized what a terrible mistake that was,
*please increment the following counter as a warning
*to the next guy.
*
*total_hours_wasted_here = 73
*/

Exception up = new Exception("Something is really wrong.");
throw up;  //ha ha

// When I wrote this, only God and I understood what I was doing
// Now, God only knows

// sometimes I believe compiler ignores all my comments

/**
Always returns true.
*/
public boolean isAvailable() {
return false;
}
배운 내용을 강화하려면 Java 과정의 비디오 강의를 시청하는 것이 좋습니다.
코멘트
  • 인기
  • 신규
  • 이전
코멘트를 남기려면 로그인 해야 합니다
이 페이지에는 아직 코멘트가 없습니다