Kotlin: Синтаксические ошибки
В человеческих языках грамматика важна, но текст с ошибками чаще всего можно понять и прочитать. В программировании всё намного строже. Любое мельчайшее нарушение, и программа не запустится. Примером может быть забытая скобка и другие детали. Подобный ошибки называются синтаксическими, потому что они нарушают правила синтаксиса языка. Если программа на Kotlin написана синтаксически некорректно, то компилятор выводит на экран соответстующее сообщение, а также указание на файл и строчку в нём, где по его мнению произошла ошибка. Ниже пример кода с синтаксической ошибкой:
println("some info"Если попробовать запустить код выше, то мы увидим сообщение:
С одной стороны, ошибки синтаксиса - самые простые, потому что они связаны исключительно с грамматическими правилами написания кода, а не с самим смыслом кода. Их легко исправить: нужно лишь найти нарушение в записи. С другой стороны, компилятор не всегда может чётко указать на это нарушение. Поэтому бывает, что забытую скобку нужно поставить не туда, куда указывает сообщение об ошибке.
Задание
Это задания не связано с уроком напрямую, но будет полезным потренировать с выводом на экран. Выведите на экран What Is Dead May Never Die.
Kotlin: Синтаксические ошибки
В человеческих языках грамматика важна, но текст с ошибками чаще всего можно понять и прочитать. В программировании всё намного строже. Любое мельчайшее нарушение, и программа не запустится. Примером может быть забытая скобка и другие детали. Подобный ошибки называются синтаксическими, потому что они нарушают правила синтаксиса языка. Если программа на Kotlin написана синтаксически некорректно, то компилятор выводит на экран соответстующее сообщение, а также указание на файл и строчку в нём, где по его мнению произошла ошибка. Ниже пример кода с синтаксической ошибкой:
println("some info"Если попробовать запустить код выше, то мы увидим сообщение:
С одной стороны, ошибки синтаксиса - самые простые, потому что они связаны исключительно с грамматическими правилами написания кода, а не с самим смыслом кода. Их легко исправить: нужно лишь найти нарушение в записи. С другой стороны, компилятор не всегда может чётко указать на это нарушение. Поэтому бывает, что забытую скобку нужно поставить не туда, куда указывает сообщение об ошибке.
Задание
Это задания не связано с уроком напрямую, но будет полезным потренировать с выводом на экран. Выведите на экран What Is Dead May Never Die.
Ваше упражнение проверяется по этим тестам
import static hexlet.io.TestUtils.getStandartOutput;
import static org.assertj.core.api.Assertions.assertThat;
class Test {
public static void main(final String[] args) {
final String expected = "What Is Dead May Never Die";
MainKt.main();
final String actual = getStandartOutput(() -> MainKt.main()).trim();
assertThat(actual).isEqualTo(expected);
}
}Решение учителя откроется через:
20:00
