Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.77/106: Рейтинг темы: голосов - 106, средняя оценка - 4.77
19 / 19 / 5
Регистрация: 26.12.2013
Сообщений: 161
1

Основы Java: ошибка "Unhandled exception type IOException"

19.06.2014, 20:37. Показов 21718. Ответов 8
Метки нет (Все метки)

Только начал изучать java и в первом же примере сделал ошибку:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package ru.spec.prog;
/*
import java.io.BufferedReader;
import java.io.StringReader;
import java.io.InputStreamReader;
*/
import java.io.*;
 
public class First {
 
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("Привет мир!");
        BufferedReader reader = new BufferedReader (
            new InputStreamReader(System.in) );
        
        System.out.print("Введите чтонить");
        String s = reader.readLine();
        System.out.print("Вы ввели: " + s);
        
    }
 
}
ошибка конкретно в этой строке:
Java
1
String s = reader.readLine();
пишет Unhandled exception type IOException

может быть это изза того, что пример написан для 1.6 а я запускаю в 1.7 ?

Подскажите пожалуйста.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.06.2014, 20:37
Ответы с готовыми решениями:

Ошибка "Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3"
Доброго времени суток. Я решил написать программу чисто для себя, но мне постоянно выдает ошибку на...

Ошибка Exception in thread "main" java.lang.NullPointerException
Полный текст консоли: Input a number: Exception in thread "main" java.lang.NullPointerException...

Ошибка Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
Посмотрите пожалуйста, что тут не так. Битый час сижу голову ломаю, никак додуматься не могу....

Ошибка: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 9
Задача такая: из файла эксель считываются значения в матрицу, нужно подсчитать среднее...

8
Форумчанин
5737 / 4090 / 399
Регистрация: 28.12.2013
Сообщений: 23,066
19.06.2014, 21:31 2
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public class First {
 
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("Привет мир!");
        BufferedReader reader = new BufferedReader ( new InputStreamReader(System.in) );
        
        System.out.print("Введите чтонить");
        String s = null;
        try {
            s = reader.readLine();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        System.out.print("Вы ввели: " + s);
        
    }
 
}
IDE же сама выдает подсказки
1
19 / 19 / 5
Регистрация: 26.12.2013
Сообщений: 161
20.06.2014, 08:18  [ТС] 3
Только я всеравно не понял, к чему тут использовать try - catch, что оно меняет в примере на видео без него работало нормально
0
Эксперт Java
4075 / 3809 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11
20.06.2014, 09:55 4
sashok991, Checked исключения нужно ловить обязательно. Так как в сигнатуре метода readLine написано, что он может бросать IOException мы обязаны его ловить (или пробрасывать дальше)
1
0 / 0 / 3
Регистрация: 28.05.2014
Сообщений: 5
20.06.2014, 10:02 5
Потому что метод который вы вызывайте "reader.readLine()" содержит "throws IOException", что заставляет вас, метод поместить в "try catch"

Метод:
Java
1
2
3
 String  readLine(boolean ignoreLF) throws IOException {
        StringBuffer s = null;
        int startChar;
Это своего рода пересылание ошибки.
0
0 / 0 / 0
Регистрация: 23.02.2019
Сообщений: 2
23.02.2019, 15:38 6
Сегодня столкнулся с той - же проблемой, хоть и поздно, но надеюсь кому-то поможет)
Следует в public static void main(String[] args) {
написать так:
public static void main(String[] args) throws Exception {
0
Йуный падаван
Эксперт PythonЭксперт Java
8646 / 5072 / 1762
Регистрация: 21.10.2017
Сообщений: 13,687
23.02.2019, 16:22 7
Цитата Сообщение от Andrii1 Посмотреть сообщение
Следует написать так:
Не надо так делать
0
0 / 0 / 0
Регистрация: 23.02.2019
Сообщений: 2
23.02.2019, 16:38 8
Подскажите, почему?
0
Йуный падаван
Эксперт PythonЭксперт Java
8646 / 5072 / 1762
Регистрация: 21.10.2017
Сообщений: 13,687
23.02.2019, 16:51 9
Потому что исключение будет выбрасываться вовне твоей программы. А это не есть гуд. Понравится ли пользователю экран с кучей страшных слов на буржуйском языке?
Исключение пробрасывать вверх по цепочке вызовов в принципе нормально, но вот из программы ее выпускать не надо. Нужно исключение поймать и, как минимум, вывести удобоваримое сообщение об этом.

Добавлено через 3 минуты
Andrii1, типа того:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public static void main(String[] args) {
 
        try {
            someMethod();
        } catch (Exception e) {
            System.out.println("Произошла какая-то фигня - " + e.getMessage());
        }
 
    }
 
    private static void someMethod() throws Exception {
        // some actions
        throw new Exception("Какая-то хрень");
    }
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.02.2019, 16:51

Ошибка Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException
import java.util.Scanner; public class Filter { public static void main (String args) {...

Ошибка: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3
Код реализации стека: package Class; class Stack { private int top; private int...

Ошибка Exception in thread "main" java.lang.NullPointerException
Всем привет, я только начал изучать Java и мне дали задание написать программу копирования файла...

Ошибка Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
Добрый день! Дабы разобраться с объектами решил написать простую программу для вывода чисел...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.