私はcat
クローンを作成しようとしています。私は-
と表示されたら入力を受け取るように要求しています。私のプログラムがカスタム例外を受け付けないのはなぜですか?
メイン();ここにある:
import java.io.*;
import java.util.*;
class cat {
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {
try{
filePrint(args[i]);
} catch(DashException letsTryThis){
catDash();
} catch(FileNotFoundException wrong) {
System.err.println(String.format("%s: File Not Found.", args[i]));
} catch (IOException noWords) {
System.err.println(String.format("%s: File can't be read.", args[i]));
}
}
}
}
filePrint()
だけ行毎にファイルを印刷し、catDash()
を受信して、標準入力を出力します。特にない。
私がしようとしているのは、具体的には-
をキャッチし、catDash()
(上記の最初のキャッチブロック)を呼び出すカスタム例外があります。しかし、try/catchブロックは何を問わず常にFileNotFound wrong
例外(上記の2番目のcatchブロック)をスローします。私の質問は、どのように特定の原因をキャッチし、最初にそれをスローして2番目のブロックが行うのですか?あなたはどこからでもカスタム例外をスローしません
import java.lang.Throwable;
public class DashException extends FileNotFoundException{
public DashException(Throwable cause){
super("-")
}
}
DashExceptionはFileNotFoundExceptionです...なぜFileNotFoundExceptionをスローしないのですか? –