Не все изучали языки программирования в ВУЗе, кто-то и сам пытается освоить, а книги все же далеки от совершенства - автор видео помогает начинающим, и очень неплохо. Спасибо ему за это!
И что удивительно, вегда найдется комментатор, желающий нагадить и имеющий для этого время... Умный вряд ли станет этим заниматься. Так что вопрос кто есть кто даже не стоит - все и так ясно.
@dadigor Бред не пишите! Вы для начала прочтите хотя бы одну книгу по Java, желательно несколько, потом будете сами исправлять.
Блок try { } это перехватчик исключения. catch { } обработчик исключения.
Автор, приводит слишком неудачный пример. Классика, когда есть две переменные int a = 5, int b = 0; a = a / b; в данном случае будет исключение, т.к. нельзя делить на ноль. Поэтому код помещается в try, а в обработчике выводится на консоль ошибка system.out.println("делить на ноль нельзя").
@hazartilirot Книги я почитываю конечно, не только это видео смотрю... И ошибки замечаю. Но этот парень абсолютно бескорыстно выкладывает СВОИ уроки, в целом очень неплохие для начинающих. За что ему честь и хвала, как я считаю.
Ругать-то его так: "Если программист ДУРАК!))))))))))))" за что? За то, что он в отличие от автора ругани, хоть чем-то делится с людьми? Проще всего написать брань, поленившись даже объяснить свою точку зрения - для этого ни особого ума, ни времени много не надо.
@dadigor Второй момент, переменные могут получать значения с ввода клавиатуры:
Scanner in = new Scanner(System.in);
int a = int.nextInt();
int b = int.nextInt();
int result = a / b;
может случиться так, что пользователь вместо цифры нажмёт букву, будет InputMismatchException. Поэтому мы весь код помещаем в try, а в catch обрабатываем InputMismatchException. Другое дело, что может вылететь ошибка ещё деление на ноль. Обрабатываем catch исключение ArithmeticException
51:30 Информацию предоставляемую методом printStackTrace(), также можно получить напрямую вызовом getStackTrace(). метод возвращает
массив элементов трассировки, каждый из которых представляет один кадр стека. Нулевой элемент предоставляет вершину стека, то
есть последний вызванный метод последовательности (точка, в которой был создан и инициализирован объект Throwable).
Соответственно, последний элемент массива представляет "низ" стека, то есть первый вызванный элемент последовательности.
hazartilirot 1 month ago
51:30 void PrintStackTrace(), void PrinStackTrace(PrintStream), void PrintStackTrace(java.io.PrintWriter) выводят информацию
об объекте Throwable и трассировку стека вызовов для этого объекта. Трассировка стека вызовов показывает последовательность
вызова методов, которая привела к точке возникновения исключения. Первый вариант отправляет информацию в стандартный поток
ошибок, второй и третий - в поток по вашему выбору.
hazartilirot 1 month ago
33:00 Этот синтаксис называется спецификацией исключений, входит в объявление метода и следуюет сразу за списком агрументов.
Спецификация исключений состоит из ключевого слова throws, за которым перечисляются все возможные типы исключений.
Обойти спецификацию исключений невозможно. Если метод возбуждает исключения и не обрабатывает их, компилятор предложит
либо обработать исключение, либо включить его в спецификацию.
hazartilirot 1 month ago
Comment removed
hazartilirot 1 month ago
Не все изучали языки программирования в ВУЗе, кто-то и сам пытается освоить, а книги все же далеки от совершенства - автор видео помогает начинающим, и очень неплохо. Спасибо ему за это!
И что удивительно, вегда найдется комментатор, желающий нагадить и имеющий для этого время... Умный вряд ли станет этим заниматься. Так что вопрос кто есть кто даже не стоит - все и так ясно.
dadigor 3 months ago
@dadigor Бред не пишите! Вы для начала прочтите хотя бы одну книгу по Java, желательно несколько, потом будете сами исправлять.
Блок try { } это перехватчик исключения. catch { } обработчик исключения.
Автор, приводит слишком неудачный пример. Классика, когда есть две переменные int a = 5, int b = 0; a = a / b; в данном случае будет исключение, т.к. нельзя делить на ноль. Поэтому код помещается в try, а в обработчике выводится на консоль ошибка system.out.println("делить на ноль нельзя").
hazartilirot 1 month ago
@hazartilirot Книги я почитываю конечно, не только это видео смотрю... И ошибки замечаю. Но этот парень абсолютно бескорыстно выкладывает СВОИ уроки, в целом очень неплохие для начинающих. За что ему честь и хвала, как я считаю.
Ругать-то его так: "Если программист ДУРАК!))))))))))))" за что? За то, что он в отличие от автора ругани, хоть чем-то делится с людьми? Проще всего написать брань, поленившись даже объяснить свою точку зрения - для этого ни особого ума, ни времени много не надо.
dadigor 1 month ago
@dadigor Второй момент, переменные могут получать значения с ввода клавиатуры:
Scanner in = new Scanner(System.in);
int a = int.nextInt();
int b = int.nextInt();
int result = a / b;
может случиться так, что пользователь вместо цифры нажмёт букву, будет InputMismatchException. Поэтому мы весь код помещаем в try, а в catch обрабатываем InputMismatchException. Другое дело, что может вылететь ошибка ещё деление на ноль. Обрабатываем catch исключение ArithmeticException
hazartilirot 1 month ago
@hazartilirot Спасибо, вот это понятно. Я с Андроидом ковыряюсь, по образованию железячник, но потихоньку въезжаю.
dadigor 1 month ago
Comment removed
hazartilirot 1 month ago
Comment removed
hazartilirot 1 month ago
Comment removed
dadigor 1 month ago
@hazartilirot Код посмотрел, я такими конструкциями тоже уже пользуюсь. Спасибо за подсказку.
dadigor 1 month ago
@dadigor Советую начинать чтение с Полный справочник по Java, 7-е издание , Герберт Шилдт. Продолжить можно Хорстманном и прочитать Эккеля.
hazartilirot 1 month ago
Если программист ДУРАК!))))))))))))
k0rinf 4 months ago