Javaで静的ブロックから例外をスローする方法は?
静的ブロック main()メソッドの実行前にJVMによって実行されるステートメントのセットです。クラスの読み込み時に、アクティビティを実行する場合は、静的ブロック内でそのアクティビティを定義する必要があります。 このブロックはクラスの読み込み時に実行されるためです 。
静的ブロックから例外をスローする
- 静的ブロック RunTimeExceptionのみをスローできます 、またはチェックされた例外をキャッチするためのtryandcatchブロックが必要です。
- 静的ブロック クラスがクラスローダーによってロードされるときに発生します。コードは、静的ブロックの形式で提供されます。 または、静的データメンバーを初期化するための静的メソッドの呼び出しとして。
- どちらの場合も、チェックされた例外 コンパイラでは許可されていません。 未チェックの例外の場合 発生すると、 ExceptionInInitializerErrorでラップされます 、クラスの読み込みをトリガーしたスレッドのコンテキストでスローされます。
- 静的ブロックからチェックされた例外をスローしようとしています また、不可能です。静的ブロックにtryandcatchブロックを含めることができます。この場合、チェックされた例外がtryブロックからスローされる可能性がありますが、catchブロック内で解決する必要があります。 throwキーワードを使用してそれをさらに伝播することはできません。
例
public class StaticBlockException { static int i, j; static { System.out.println("In the static block"); try { i = 0; j = 10/i; } catch(Exception e){ System.out.println("Exception while initializing" + e.getMessage()); throw new RuntimeException(e.getMessage()); } } public static void main(String args[]) { StaticBlockException sbe = new StaticBlockException(); System.out.println("In the main() method"); System.out.println("Value of i is : "+i); System.out.println("Value of j is : "+ j); } }
出力
In the static block Exception while initializing/ by zero Exception in thread "main" java.lang.ExceptionInInitializerError Caused by: java.lang.RuntimeException: / by zero at StaticBlockException.(StaticBlockException.java:10)
-
JavaでCSVファイルからデータを読み取る方法は?
CSV カンマ区切り値の略です 。 CSVファイルでは、各行にカンマ(、)で区切られた単語が含まれています そしてそれは 。csvとともに保存されます 拡張機能。 readLine()を使用して、CSVファイルを1行ずつ読み取ることができます BufferedReaderのメソッド クラス。各行をコンマ文字で分割して、その行の単語を配列に入れます。これで、配列を反復処理するか、適切なインデックスを使用して、配列の内容を簡単に印刷できます。 CSVファイル 例 import java.io.*; public class CSVReaderTest { p
-
Windows10でWebサイトを開くのをブロックする方法
Webサイトは、Webページやマルチメディアコンテンツなどの関連するネットワークWebリソースのコレクションであり、通常は共通のドメイン名で識別され、少なくとも1つのWebサーバーで公開されます。たとえば、オフィスで使用するようにコンピューターを構成したり、自宅で使用するために一部のWebサイトを制限したりするために、特定のWebサイトをブロックする必要がある場合があります。したがって、この記事では、Windows10でWebサイトをブロックする方法を説明します。 Windows 10でWebサイトが開かないようにブロックするにはどうすればよいですか? Windows 10でサイトを