Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> @Inherited 
:(
    Опции темы
Java2
Дата 29.6.2006, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 26.4.2006

Репутация: нет
Всего: нет



Народ, 

в документации написано, что если аннотацию пометить как @Inherited и применить к классу, тогда его наследник унаследует её. 
Я провел эксперемент:
Код


@MyAnno 
public class Parent {
}
public class Child extends Parent{

}

@Documented
@Inherited
@interface MyAnno {
    String value() default "test str";
    int v() default -1;
}

и сделал javadoc.
В результате класс Parent задокументировался с аннотацией, а наследник без неё.
Подскажите, пожалуйста, где тут у меня ошибка.

И ещё вопрос: не понятно, зачем нужна аннотация-маркер @Ovveride для методов?
т.е. в чём её логическая суть.
 
PM MAIL   Вверх
djGri
Дата 29.6.2006, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 21.2.2005

Репутация: 1
Всего: 3



Цитата(Java2 @  29.6.2006,  08:55 Найти цитируемый пост)
зачем нужна аннотация-маркер @Ovveride для методов?

Пример:
Код

public class A {

    @Override public String toString() {

       return "blabla";
    }
}


Т.к. метод toString() унаследован от Object и ты его переопределяешь, надо добавить @Override. 
PM MAIL   Вверх
Java2
Дата 29.6.2006, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 26.4.2006

Репутация: нет
Всего: нет



Цитата(djGri @  29.6.2006,  11:01 Найти цитируемый пост)
Т.к. метод toString() унаследован от Object и ты его переопределяешь, надо добавить @Override.  

понятно, а зачем это нужно делать? 
PM MAIL   Вверх
batigoal
Дата 29.6.2006, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Нелетучий Мыш
****


Профиль
Группа: Участник Клуба
Сообщений: 6423
Регистрация: 28.12.2004
Где: Санктъ-Петербургъ

Репутация: 24
Всего: 151



Цитата(Java2 @  29.6.2006,  12:19 Найти цитируемый пост)
понятно, а зачем это нужно делать?  

Просто чтобы явно указать, что этот метод переопределяет родительский. Например, на случай, если ты хочешь его переопределить, но случайно опечатываешься в названии метода, и создаешь новый. 


--------------------
"Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли)
ЖоржЖЖ
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
javastic
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0430 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.