Javaの大きな問題は、例外処理に取り組んでいるときに発生します。 Javaのthrow、throws、およびthrowableの間で一般的な混乱が発生します。すべての疑問を解消するために、次のポイントがこの「 投げる、投げる、投げる '論文:
Javaでのthrow、throws、throwableの違いに関するこの記事に進みます。
スロー: Javaのthrowキーワードは、メソッドまたはコードのブロックから例外を明示的にスローするために使用されます。チェックされた例外またはチェックされていない例外のいずれかをスローできます。 throwキーワードは、主にカスタム例外をスローするために使用されます 。
構文 :
ビッグデータ分析で使用されるツール
throwインスタンス//例:throw new ArithmeticException( '/ by zero')
しかし、この例外、つまり、 インスタンス タイプである必要があります スロー可能 またはのサブクラス スロー可能 。たとえば、ExceptionはThrowableのサブクラスであり、ユーザー定義の例外は通常Exceptionクラスを拡張します。 C ++とは異なり、int、char、float、throwableクラスなどのデータ型を例外として使用することはできません。
例:
public class GFG {public static void main(String [] args){//チェックされていない例外の使用try {// double x = 3/0 throw new ArithmeticException()} catch(ArithmeticException e){e.printStackTrace()}} }
出力:
java.lang.ArithmeticException:/ゼロで
atUseofThrow.main(UseofThrow.java:8)
Javaでのthrow、throws、throwableの違いに関するこの記事に進みます。
Javaでスロー:
スロー また、このメソッドが前述の例外をスローする可能性があることを示すためにメソッドシグネチャで使用されるJavaのキーワードです。このようなメソッドの呼び出し元は、try-catchブロックを使用するか、throwsキーワードを使用して、前述の例外を処理する必要があります。以下は、throwsキーワードを使用するための構文です。
return_type method_name(parameter_list)はexception_listをスローします
{//いくつかのステートメント} throws:import java.io.IOException public class UseOfThrowAndThrows {public static void main(String [] args)throws IOException {}}
出力:
スレッド「メイン」java.io.IOExceptionの例外
UseOfThrowAndThrows.main(UseOfThrow.java:7)で
Javaでのthrow、throws、throwableの違いに関するこの記事に進みます。
Java.lang.Throwableクラス
スロー可能 は、Javaのすべてのタイプのエラーと例外のスーパークラスです。このクラスはのメンバーです java.lang パッケージ。このクラスまたはそのサブクラスのインスタンスのみが、Java仮想マシンまたはthrowステートメントによってスローされます。 catchブロックの唯一の引数は、このタイプまたはそのサブクラスである必要があります。独自にカスタマイズした例外を作成する場合は、クラスでこのクラスを拡張する必要があります。
クラス宣言
以下は、java.lang.Throwableクラスの宣言です。
- パブリッククラスThrowable
- オブジェクトを拡張します
- Serializableを実装します
例:
class MyException extends Throwable {//カスタマイズされた例外クラス} class ThrowAndThrowsExample {void method()throws MyException {MyException e = new MyException()throw e}}
これで、「Javaでのthrow、throws、throwableの違い」に関するこの記事は終わりです。詳細を知りたい場合は、 信頼できるオンライン学習会社であるEdurekaによる。 は、HibernateやSpringなどのさまざまなJavaフレームワークとともに、コアJavaの概念と高度なJavaの概念の両方についてトレーニングするように設計されています。
質問がありますか?このブログのコメントセクションでそれについて言及してください。できるだけ早くご連絡いたします。