





1. Забыли точку с запятой
Самая частая ошибка начинающих программистов Java — это точка с запятой. Вернее, отсутствие её там, где она должна быть.
Каждая команда внутри метода должна заканчиваться точкой с запятой. Точка с запятой — это разделитель команд: таким образом мы даем понять Java-компилятору, где заканчивается одна команда и начинается следующая.
Примеры ошибочных ситуаций:
Код с ошибками | Исправленный код |
---|---|
|
|
|
|
|
|
2. Забыли закрыть кавычки
Вторая самая популярная ошибка новичков в Java — написать в коде строку и забыть закрыть кавычки.
Каждая строка в коде должна быть с двух сторон обрамлена двойными кавычками — «"». Начинающие программисты очень часто пишут кавычки в начале текста, но забывают закрыть их в конце.
Примеры таких ситуаций:
Код с ошибками | Исправленный код |
---|---|
|
|
|
|
|
|
3. Забыли знак плюс при склеивании строк
Еще одна частая ошибка при работе со строками — забыли написать знак плюс при склеивании строк. Особенно часто эта ошибка возникает, когда в коде в длинном выражении склеивается текст и переменные.
Примеры таких ситуаций:
Код с ошибками | Исправленный код |
---|---|
|
|
|
|
|
|
4. Забыли закрыть фигурные скобки
Это очень распространенная ошибка. Обычно она возникает в двух случаях:
Первый вариант: вы решили скопировать откуда-то код и случайно пропустили некоторые фигурные скобки. Или же второй вариант: вы не следите за тем, чтобы каждой открывающей скобке соответствовала закрывающая скобка.
Чтобы избежать подобных ошибок, новичкам в программировании обычно рекомендуется писать закрывающую фигурную скобку строго под открывающей.
Примеры:
Код с ошибками | Исправленный код |
---|---|
|
|
|
|
5. Забыли написать круглые скобки
Чаще всего эту ошибку делают программисты, которые знают языки программирования, где в аналогичных ситуациях круглые скобки не обязательны.
Первый вариант — банально забыли поставить скобки в конце вызова метода:
Второй вариант — забыли обернуть в скобки условие оператора if-else
.
Примеры:
Код с ошибками | Исправленный код |
---|---|
|
|
|
|
6. Неправильно написан заголовок метода main
Как только не пишут многострадальный заголовок метода main
. Наверное, ни над кем так не издеваются новички, как над этим бедным методом. И главное, потом всегда удивляются: а чего это наша программа не запускается?
И, конечно, дело не в программисте, а в программе, компиляторе, валидаторе, Java-машине. Список виновных можно продолжать бесконечно.
Примеры:
Код с ошибками | Пояснение |
---|---|
|
Пропущен public |
|
Пропущен static |
|
Пропущен static и void |
|
Пропущены public и static |
|
Пропущены [] |
|
Пропущены String[] args |
|
Вместо void написано int |
7. Имя файла отличается от имени класса
Согласно стандарту, все классы в Java должны храниться в файле, название которого совпадает с именем класса. И как уже раньше говорилось, размер букв тут тоже имеет значение:
Имя файла | Имя класса | Примечание |
---|---|---|
|
|
Все отлично
|
|
|
Лишняя буква s в названии файла |
|
|
Название файла с маленькой буквы |
|
|
Расширение файла txt вместо java |
|
|
Название класса с маленькой буквы
|
Вообще-то в файле с расширением java может быть объявлено несколько классов, но только у одного из них перед именем может быть слово public
. Вот его-то имя и должно совпадать с именем файла.
В файле с расширением java всегда должен быть класс, имя которого совпадает с именем файла, и у него есть модификатор public
. Пример:
Solution.java |
---|
|
Также в языке Java разрешено писать классы в классах. Это тоже способ обойти вышеозвученное ограничение. Если в файле объявлен публичный класс (с модификатором public
), имя которого совпадает с именем файла, внутри этого публичного класса можно объявлять сколько угодно классов. Хотя это уже будут не обычные, а внутренние или вложенные классы. Пример:
Solution.java |
---|
|
8. Забыли написать package
Т.к. в программах обычно тысячи классов, всем из них сложно подобрать простые, понятные и уникальные имена. Поэтому в Java все классы принято группировать по пакетам — package
. Точно так же, как файлы группируются по папкам.
Поэтому в начале каждого класса нужно писать пакет, которому он принадлежит. Пример
Код без пакета | Исправленный пример |
---|---|
|
|
9. Забыли добавить import
Если мы хотим в нашей программе использовать какой-то чужой класс, у нас есть два варианта: мы должны везде в нашем коде писать перед именем этого класса еще и имя его пакета. Или же мы можем один раз написать полное имя класса со словом import
.
Пример:
Без использования import | С использованием import |
---|---|
|
|
Оба варианта рабочие, но вот если вы в своем коде будете писать просто Scanner
, а import
не добавите, компилятор не сможет понять, из какого пакета ему нужно брать класс Scanner
, и компилировать вашу программу не будет.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ