質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

3回答

985閲覧

try-catchについて

aikosu

総合スコア12

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

1クリップ

投稿2017/08/14 13:49

catchブロックが省略できる理由って...
当たり前とは思いますが...

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

try/finally を使う為です。

java

1try { 2} finally { 3}

例外とは関係なく、try のスコープを抜ける際に finally スコープに入ります。最近は try-with-resource の記法が使われる方が多いかもしれません。

java

1try (BufferedReader br = new BufferedReader(new FileReader(path))) { 2 return br.readLine(); 3}

投稿2017/08/14 15:00

mattn

総合スコア5030

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Javaの言語仕様で定義されているからです。

http://docs.oracle.com/javase/specs/jls/se8/html/jls-14.html#jls-14.20.2

try句の中で何らかの例外が発生した場合はその時点でtry句の処理を中断し、発生した例外に対する制御であるcatch句に委ね、例外の有無に関わらずそれぞれのブロックで必ず行う処理を実装するブロックとしてfinally句があります。
catch句で何もしない=発生した例外をこのブロックではもう何もしないことを事実上宣言することになりますが、try句の中で異常を検知し、その後特に何もしなくても問題のない例外であれば、そもそもtry句で囲む理由はありません。
チェック例外が発生したとき、つまり何らかの例外に対する処理を記述しなければならない問題が発生したとき、catchもfinallyもない、つまりその処理ブロックで完全に何もしないのであれば、メソッドのthrowsに書きます。

投稿2017/08/14 22:41

A-pZ

総合スコア12011

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

paiza.ioの実行結果ですが、以下のようになりました。

C#

1using System; 2 3public class Hello{ 4 public static void Main(){ 5 // Here your code ! 6 try { 7 throw Exception(); 8 } 9 } 10}

エラーメッセージ

text

1Compilation failed: 1 error(s), 0 warnings 2Main.cs(9,4): error CS1524: Unexpected symbol `}', expecting `catch' or `finally'

私の環境では、catchもしくはfinallyが必要であるとのことでした。

投稿2017/08/14 14:38

anndonut

総合スコア667

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mattn

2017/08/14 14:56

タグが Java です。
anndonut

2017/08/14 15:11

まちがえました。すみません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問