Re: NotNull annotation
От: all-x Россия http://treedl.sf.net
Дата: 08.08.05 06:48
Оценка:
Здравствуйте, bob_marlin, Вы писали:

_>Здесь как-то уже пролетала статья

_>Adding notnull to the Java Programming Language
Автор(ы): Dmytro Sheyko
Дата: 08.08.2004
В данной статье рассматривается расширение языка программирования Java, которое позволяет существенно сократить количество ошибок, связанных с разыменованием нулевого указателя и обычно проявляющихся в виде неожиданного исключения java.lang.NullPointerException.

_>про notnull модификатор,

Вот ещё ссылка по теме от классика — Bertrand Meyer: http://se.ethz.ch/~meyer/publications/lncs/attached.pdf

_>но с появлением java 5 и эту проблему можно решить через annotation,

_>кто-нибудь это уже сделал ?

_>простую и банальную


_>
_>package java.lang;

_>import java.lang.annotation.*;

_>@Documented
_>@Retention(RetentionPolicy.RUNTIME)
_>@Target({
_>    ElementType.FIELD,
_>    ElementType.METHOD,
_>    ElementType.PARAMETER,
_>    ElementType.LOCAL_VARIABLE
_>})
_>public @interface NotNull {}
_>


_>не хочется, т.к. нет реально проверки (если есть, то поправте — я не вижу) на уровне выполнения

_>(т.е хочется, чтобы

_>

_>public void setSmth(@NotNull Object smth){
_>...
_>}

_>


_>выплюнул ошибку, при попытке проставить ему null)


По-моему, это не правильно. Цель в том, чтобы ловить подобные ошибки на этапе компиляции, а NPE при выполнении получить всегда успеем
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.