Комментарии мультилинии Java составляют строки?

Этот вопрос, вероятно, применялся бы одинаково хорошо к другим языкам с подобными C многострочными комментариями. Вот проблема, с которой я встречаюсь. Я работаю с кодом Java в Eclipse, и я хотел прокомментировать блок кода. Однако существует строка, которая содержит последовательность символов "* /", и Eclipse думает, что комментарий должен закончиться там, даже при том, что это в строке. Это дает мне тонны ошибок и сбоев для создания.

/*
   ... some Java code ...
   ... "... */ ..." ...
   ... more Java code ...
*/

Спецификация Java соответствует интерпретации Eclipse моего многострочного комментария? Я хотел бы думать, что Java и/или Eclipse будут составлять этот вид вещи.

5
задан 28 August 2008 в 17:47
поделиться

6 ответов

Eclipse корректен. Нет никакого контекста интерпретации в комментарии (никакой выход, и т.д.). См. JLS §3.7.

9
ответ дан 13 December 2019 в 05:45
поделиться

В Eclipse можно выделить часть исходного кода, который Вы хотите прокомментировать и использовать Ctrl +/для одной строки, комментируют, что каждая строка в выделенном разделе - помещает "//" в начале строк.

Или если Вы действительно хотите к комментарию блока использование выбора Ctrl+Shift +/комбинация. Это обнаружит комментарии блока в Вашем выборе. Однако отмена этого более трудна, чем однострочные комментарии.

2
ответ дан 13 December 2019 в 05:45
поделиться

Простой тест показывает, что Eclipse корректен:

public class Test {
  public static final void main(String[] args) throws Exception {
    String s = "This is the original string.";
    /* This is commented out.
    s = "This is the end of a comment: */ ";
    */
    System.out.println(s);
  }
}

Этому не удается скомпилировать с:

Test.java:5: unclosed string literal
    s = "This is the end of a comment: */ ";
0
ответ дан 13 December 2019 в 05:45
поделиться

Я часто использую только // для встроенных комментариев и использования /* */ только для того, чтобы прокомментировать большие блоки путем Вы имеете.

Много разработчиков будет все еще использовать/* */для встроенных комментариев, потому что это - то, с чем они знакомы, но они все сталкиваются с проблемами как этот, в C он не имел значения так же, потому что Вы могли #if 0 материал далеко.

0
ответ дан 13 December 2019 в 05:45
поделиться

Я могу быть услужливым, чтобы просто сделать "пакетный" многострочный комментарий так, чтобы он прокомментировал каждую строку с "//". Это - Ctrl + "/" в Идее для комментария и некомментария выбранных строк, Eclipse должен иметь подобную функцию.

0
ответ дан 13 December 2019 в 05:45
поделиться

Да, я комментирую код только, чтобы сделать быстрый тест. Я уже протестировал то, что я должен был путем комментирования кода иначе; мне было просто любопытно на предмет того, что, кажется, нечетная ошибка Java и/или Eclipse.

1
ответ дан 13 December 2019 в 05:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: