Проблема с нововведениями в Java 1.6 (аннотации)

Тема в разделе "Java", создана пользователем lexluther, 23 ноя 2008.

  1. lexluther

    lexluther Гость

    Всем привет,

    Помогите мне пожалуйста решить проблему с нововведениями в Java 1.6. Я пытаюсь реализовать аннотацию но она не работает.

    Есть следующий класс (NewClassAttribute.java):

    package myjavaapplication;

    @interface NewClassAttribute {
    String value();
    }

    Есть класс (NewClass.java):

    package myjavaapplication;

    @NewClassAttribute("NewClass")
    public class NewClass
    {
    public NewClass()
    {}

    @Override
    public void finalize()
    {}
    }

    Есть класс main который делает получение аттрибута:

    package myjavaapplication;

    import static java.lang.System.out;
    import static java.lang.System.in;

    public class Main {

    public static void main(String[] args) {

    NewClass NC = new NewClass();

    out.print(NC.getClass().getAnnotation(NewClassAttribute.class).value());
    }
    }

    Т.е. я хочу вывести на вывод значение аттрибута "NewClass". Вроде код правильный, но он не работает так как постоянно вылетает Exception in thread "main" java.lang.NullPointerException

    Вообщем NC.getClass().getAnnotation(NewClassAttribute.class) возвращает всегда null

    NewClass.class.getAnnotation(NewClassAttribute.class).value() аналогично не работает.

    Помогите пожалуйста, подскажите что я делаю неправильно.

    PS: Также к примеру у меня аналогичные проблемы с энумерацией:

    public enum NewClass
    {
    RED(20)
    {
    public NewClass next()
    {
    return RED;
    }
    }
    }

    Этот код просто не компилится (взят из учебника). Тогда как код:

    public enum NewClass
    {
    RED
    {
    public NewClass next()
    {
    return RED;
    }
    }
    }

    компилится. Подскажите мне пожалуйста где есть небольшой но подробный справочник по нововведениям в сети?

    Версия ОС:
    Windows XP Service Pack 3

    Версия JAVA (java -version):
    java version "1.6.0"
    Java(tm) SE Runtime Environment (build 1.6.0-b105)
    Java HotSpot(tm) Client VM (build 1.6.0-b105, mixed mode, sharing)

    Среда разработки (About окно):
    Product Version: NetBeans IDE 6.1 (Build 200805300101)
    Java: 1.6.0; Java HotSpot(tm) Client VM 1.6.0-b105
    System: Windows XP version 5.1 running on x86; Cp1251; uk_UA (nb)
    Userdir: G:\Documents and Settings\artiom\.netbeans\6.1
     
  2. Kmet

    Kmet Well-Known Member

    Регистрация:
    25 май 2006
    Сообщения:
    1.017
    Симпатии:
    1
Загрузка...
Похожие Темы - Проблема нововведениями Java
  1. c0de3r
    Ответов:
    5
    Просмотров:
    127
  2. DobermannTT
    Ответов:
    10
    Просмотров:
    136
  3. SoulPaladin
    Ответов:
    4
    Просмотров:
    133
  4. Artael
    Ответов:
    1
    Просмотров:
    110
  5. ENSLER
    Ответов:
    0
    Просмотров:
    103

Поделиться этой страницей