Ich schreibe einen Code, der Ausnahmen verursacht, wenn eine Datei nicht existiert oder wenn eine ungültige Anweisung in der Datei ist. Wie erhalte ich einen Code, um eine ungültige Instruktionsausnahme in meinem Code zu werfenAusnahmen für bestimmte Probleme
Antwort
Sie müssen FileNotFoundException abfangen und dann jede mögliche Ausnahme wiederholen, die Sie wünschen. siehe unten ..
catch(FileNotFoundException e){
throw new InvalidRobotInstructionException(e);
}
nicht InvalidRobotInstructionException
fangen Sie. In Ihrer while-Schleife, müssen Sie erkennen, ob String s = in.nextLine();
ein ungültiger Befehl ist, wenn es dann können Sie ist tun:
throw new InvalidRobotInstructionException()
Wie kann ich feststellen, ob es ungültig ist? Ich habe wirklich keine Ahnung, wie ich das machen soll? – Darkhail
ist es schwer zu wissen, ohne die Anforderungen des Programms. Was ist eine "ungültige Anweisung"? – ggreiner
Jedes Zeichen, das nicht eine Zahl oder N S W oder E ist. – Darkhail
Ok, das wohl funktionieren würde, aber InvalidRobotInstructionException erstreckt sich bereits in Runtime seiner eigenen Klasse. – Darkhail
Ok. Dann würde ich vorschlagen, Ihre Eingabe unten gemäß @ggreiner zu validieren und Ausnahme entsprechend zu werfen. –