Не-ответ; и подкрепляется моим мнением, но, в конце концов, также подкрепляется многолетним опытом мышления по темам качества кода:
Я знаю, это стиль; но все же, я думаю, что ваш стиль не поможет. Иначе. Поэтому ответ: не делайте этого. Не ставьте final
на любую переменную без разбора.
Дело в том, что вы хотите, чтобы ваш исходный код был точным и подробным ... но также и «минималистичным». Имейте в виду: каждый и любой персонаж, который был написан ... нужно читать. И «разобрал» и «обработал» мозг читателей.
Итак, вы хотите сбалансировать то, что вы записываете. И дело в том, что: больше всего времени, те final
ключевое слово будет не Добавить любую ценность в исходный код. Нуль.
Есть только два места, где final
действительно делает разницу:
- поля класса. Это должно быть
final
по умолчанию - потому что это дает вам на полпути до неизменный объектов; что по-настоящему очень хорошо. Конечно, иногда вы должны позволять полям изменять их значение; но, как сказано: это должно быть исключением.
- Переменные, которые входят в лямбда, анонимные внутренние классы, ... другими словами: переменные, которые должны быть защищены от изменения; так что становится «безопасным» использовать их в «другом» контексте. Но угадайте, что: с Java8 компилятор даже научился обнаруживать эффективно конечных переменных. Таким образом, вы можете использовать их в lambads даже без ключевого слова
final
. Поэтому даже отцы языка Java предлагают вам избегать использования этого ключевого слова!
Но за этими двумя случаями; есть дваллионы мест в вашем коде, где final
только способствует вкладу, который ваш мозг должен переваривать; без добавления ценности вашей программы.
Короче говоря: отступите на второй план и передумайте, чего вы пытаетесь достичь с помощью этой политики.
Наконец, и вы уверены, что вы будете помнить отменить изменения в чужого кода?Как вы можете видеть: не каждый поддерживает ваш стиль; поэтому вы должны не только спрашивать, как легко изменить другой код; но и как вернутьсяте изменения назад позже. Предположим, вы должны внести несколько реальных изменений в этот исходный код; а затем передать их в ваш репозиторий - действительно ли вы готовы пойти и отменить внесенные вручную изменения final
; обеспечивая при этом сохранение всех других «реальных» изменений.
Я думаю, это может помочь: https://intellij-support.jetbrains.com/hc/en-us/community/posts/206886125-Applying-Spected-to-the-whole-File – Mzf