Метод getMessage
Метод getMessage возвращает строку с текстовым описанием ошибки. Этот текст обычно задаётся при создании исключения и содержит информацию о том, что именно пошло не так. Метод не принимает параметров и возвращает значение типа String. Если сообщение не было задано, метод может вернуть null.
Синтаксис
throwable.getMessage()
Пример
Давайте создадим исключение с сообщением и получим его через метод getMessage:
public class Main
{
public static void main(String[] args)
{
try
{
throw new Exception("Something went wrong");
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
}
}
Результат выполнения кода:
"Something went wrong"
Пример
Если сообщение не было указано при создании исключения, метод вернёт null. Давайте проверим это:
public class Main
{
public static void main(String[] args)
{
try
{
throw new Exception();
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
}
}
Результат выполнения кода:
null
Пример
Метод getMessage часто используется вместе с printStackTrace для вывода полной информации об ошибке. Давайте выведем и сообщение, и стек вызовов:
public class Main
{
public static void main(String[] args)
{
try
{
int[] arr = new int[5];
System.out.println(arr[10]);
}
catch (ArrayIndexOutOfBoundsException e)
{
System.out.println("Message: " + e.getMessage());
e.printStackTrace();
}
}
}
Результат выполнения кода (первые строки):
Message: Index 10 out of bounds for length 5
java.lang.ArrayIndexOutOfBoundsException: Index 10 out of bounds for length 5
at Main.main(Main.java:7)
Смотрите также
-
метод
printStackTrace,
который выводит стек вызовов исключения -
метод
getCause,
который возвращает причину исключения -
класс
Throwable,
который является базовым для всех ошибок и исключений -
оператор
throw,
который используется для создания исключений