final & transient
Добавлено: 02 апр 2007, 15:46
Доброго времени суток!
В процессе поиска новых интересных средств разработки нашел плагин (программку) PMD, который ищет потенциальные ошибки в коде.
Среди прочих ошибок, которые он мне выдал, были две, о которых хочу спросить.
Как часто часто вы используете модификаторы "final" и "transient" в своём коде?
1. transient,
у меня J2SE приложение, которому сериализация не нужна
(надеюсь, я правильно понимаю суть сериализации, что она используется только для RMI ?)
А если она мне не нужна, то и transient писать не обязательно, или нет?
2. final,
чисто теоретически, все переменные методов, которые не будут (не должны) меняться внутри метода можно (или нужно?) пометить "final".
С другой стороны, просматривая время от времени исходники JDK я не встречал такого кода.
Так имеет ли смысл использовать final таким образом?
А заодно и все переменные, которые были присвоены лишь один раз при инициализации сделать final.
Повысит ли это надёжность программы?
Используете ли вы final в своём коде без особой надобности (когда об этом просит компилятор), или видели ли код с обильным колличеством такового?
В процессе поиска новых интересных средств разработки нашел плагин (программку) PMD, который ищет потенциальные ошибки в коде.
Среди прочих ошибок, которые он мне выдал, были две, о которых хочу спросить.
Как часто часто вы используете модификаторы "final" и "transient" в своём коде?
1. transient,
у меня J2SE приложение, которому сериализация не нужна
(надеюсь, я правильно понимаю суть сериализации, что она используется только для RMI ?)
А если она мне не нужна, то и transient писать не обязательно, или нет?
2. final,
чисто теоретически, все переменные методов, которые не будут (не должны) меняться внутри метода можно (или нужно?) пометить "final".
С другой стороны, просматривая время от времени исходники JDK я не встречал такого кода.
Так имеет ли смысл использовать final таким образом?
А заодно и все переменные, которые были присвоены лишь один раз при инициализации сделать final.
Повысит ли это надёжность программы?
Используете ли вы final в своём коде без особой надобности (когда об этом просит компилятор), или видели ли код с обильным колличеством такового?