私はJava初心者です。 try catchを使用してfinallyブロックを使用するときにJavaコードを整理する方法に関する質問があります。いくつかのテキストファイルを読み込んで、格納されているファイルの内容を計算する必要があるとします。私のコードはどのように見えますか?try catchを使用するとJavaコードを整理するfinallyブロック
例えば
コード1のようになりますより良いコーディング練習2つの
public static void main(String[] args){
try{
//open files using BufferedReader, read and store the file contents.
// do computations on the data
}catch(IOException e){
e.printStackTrace();
}
finally{
//close the files
}
}
:
public static void main(String[] args){
try{
//open files using BufferedReader, read and store the file contents.
}catch(IOException e){
e.printStackTrace();
}
finally{
//close the files
}
// do computations on the data
}
コード2のように見えますか?また、最終的にはブロック の後に置くか、最後に置くことができます。
方法2これは、データを計算したい場合にはおそらくデータが必要なためです。 – Breavyn
'catch'ブロックで' e.printStackTrace() 'を呼び出すと、例外を処理しません。これは古典的な[try/catch/ignore anti-pattern](http://c2.com/cgi/wiki?EmptyCatchClause)です。 – Asaph
私はtry catchの中のtry catchに必要なものだけを入れます。ファイルを読み込むと例外がスローされるので、IDはtry catchにそれを入れます。あなたの計算がそうであれば、それらを別々のtry catchに入れ、そうでなければ外側に移動します。ですから、コード1を推薦するのは私の一種です。 – user489041