Как сделать комментарии Javadoc в переопределенных методах видимыми - PullRequest
2 голосов
/ 23 сентября 2011

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

Вот пример -

enum Foo{
    ITEM{
        /**
          * Arguments must be received in the following order...
          */
        @Override
        void bar(String[] args){...}
    };

    /**
      * Bars the specific args
      * @param args the specific args
      */
    abstract void bar(String[] arags);
}

Когда у меня появляется что-то вроде Foo.ITEM.bar(...), и я нахожу над ним курсор, я хочу прочитать

Заполняет конкретные аргументы
Аргументы должны быть получены в следующем порядке ...
@args конкретные аргументы

Возможно ли это?

Ответы [ 3 ]

1 голос
/ 23 сентября 2011

Я не думаю, что вы действительно можете иметь Javadoc для методов отдельных констант перечисления.

Итак, либо поместите важную информацию в общий метод (т. Е. Foo.bar), либо в документациюиндивидуальная константа (т.е. Foo.ITEM).Методы для отдельных констант не должны быть такими разными, чтобы они в любом случае требовали отдельных комментариев.

1 голос
/ 23 сентября 2011

Если я правильно понимаю, что вы хотите, это то, для чего {@inheritDoc}. Поместите его в тело комментария или соответствующий тег, чтобы получить комментарий из объявления суперкласса / интерфейса.

Источник и соответствующий отрывок:

Автоматическое копирование комментариев метода. Инструмент Javadoc имеет возможность копировать или «наследовать» комментарии метода в классах и интерфейсах под следующие два обстоятельства. Конструкторы, поля и вложенные классы не наследуют комментарии к документу.

Автоматически наследовать комментарий, чтобы заполнить пропущенный текст - когда основной описание или тег @return, @param или @throws отсутствует в Метод комментария, инструмент Javadoc копирует соответствующий основной описание или тег-комментарий от метода, который он переопределяет или реализует (если есть) в соответствии с алгоритмом ниже. Более конкретно, когда Отсутствует тег @param для определенного параметра, затем комментарий для этот параметр копируется из метода дальше по наследству иерархия. Когда тег @throws для определенного исключения отсутствует, тег @throws копируется, только если объявлено исключение.

Это поведение отличается от версии 1.3 и более ранних версий, где наличие какого-либо основного описания или тега помешало бы всем комментариям от наследства.

Явно наследуйте комментарий с тегом {@inheritDoc} - вставьте встроенный тег {@inheritDoc} в основном описании метода или @return, @param или Комментарий тега @throws - соответствующее унаследованное основное описание или комментарий тега копируется в это место.

1 голос
/ 23 сентября 2011

Если это интерфейс, добавьте в интерфейс javadoc, а затем используйте тег @Override, и он должен появиться.

...