Я думаю, это потому, что в Java нет такой «традиции».
Вы видите, что первая книга, которую я прочитал о Swift (Swift Programming Language 2.0 от Apple Inc.), говорит, что каждая создаваемая вами переменная, которая не является мутированной, должна быть объявлена как константа let
.
Поскольку Swift Язык программирования 2.0 (книга) является официальным справочником по Swift, почти все следуют за ним. Даже если люди не читают эту книгу, они будут читать учебники, написанные людьми, которые прочитали эту книгу. В результате, стиль кодирования каждого выглядит так.
Напротив, первая книга, которую я прочитал о Java (Программирование с Java для чайников), не подчеркивает, что мы должны использовать final
, если значение не изменится. И официальные документы редко делают это. Таким образом, только несколько программистов следуют этому правилу. Это привело к тому, что большинство пишет код, который фактически следует этому правилу.
Кроме того, вы должны написать еще 5 символов (слово «final» плюс пробел), чтобы объявить константу в Java, тогда как в Swift вы не записываете никаких дополнительных символов (var и пусть имеют одинаковые количество символов)! Программисты ленивы, знаешь.
Потому что это дополнительная набивка, а программисты ленивы. Но если вы используете IDE, у него, вероятно, есть функция «автоматически добавлять финал, где это возможно», когда вы сохраняете файл. – Thilo
Потому что люди ленивы. 'final' является _required_ pre Java 8 для закрытий, но, кроме этого, редко используется. Я и [Роберт Симмонс-младший] (http://shop.oreilly.com/product/9780596005689.do) выступают за его принятие.Основная причина заключается в том, что он отфильтровывает некоторые глупые опечатки во время компиляции. Но поскольку это не влияет на время работы программы, в отличие от 'const' на C++, аргументация для дополнительного ввода и кодового шума отсутствует достаточно для многих людей. –
@Thilo так просто, как let ключевое слово в swift, я должен объявить переменную java final evenverever possible? – Thor