2013-07-07 3 views
1

В настоящее время я пишу текстовый редактор, используя связанные списки, и я в значительной степени занят, но я сталкиваюсь с исключением FileNotFoundException при попытке проверить командную строку моей программы, хотя я ее объявил быть брошенным.Получение FileNotFoundException, несмотря на то, что я объявил, что он был выброшен

Вот скелет моего редактора:

public class Editor { 

    public Editor() { 

    } 

    public void commandLine() throws FileNotFoundException { 

    } 
} 

Вот драйвер для моей программы:

public class EditorTest 
{ 
    public static void main(String[] args) 
    { 
     Editor asdf = new Editor(); 
     asdf.commandLine(); 

    } 
} 

Я все еще получаю сообщение об ошибке для несообщаемого FileNotFoundException хотя я объявлял быть брошенным в мой метод командной строки. Что не так?

+0

Вы «бросаете» его на «главную», но вы не «ловите»/«бросаете» его там. Как это даже скомпилировать? – Maroun

ответ

3

Вам необходимо добавить throws FileNotFoundException в ваш метод main. Или, вы можете добавить:

try { 
     asdf.commandLine(); 
    } catch (FileNotFoundException e) { 
     e.printStackTrace(); 
    } 

вашему методу main, в зависимости от того, что вам нужно сделать на основе этого исключения.

0

Yo нужно объявить его на главном, тоже

public static void main(String[] args) throws FileNotFoundException { 
0

Объявление исключения, чтобы быть брошен в методе (т.е. с использованием бросает MyException) не мешает исключений быть выброшен, он скорее позволяет метод бросить его для вызывающего объекта этого метода, чтобы его поймать. Исключение