lexluther Posted November 22, 2008 Report Share Posted November 22, 2008 Всем привет, Помогите мне пожалуйста решить проблему с нововведениями в 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 SE Runtime Environment (build 1.6.0-b105) Java HotSpot 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 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 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.