Java
 Computer >> コンピューター >  >> プログラミング >> Java

Javaで静的コンストラクターを定義できますか?


いいえ静的コンストラクターを定義できません Javaでは、staticキーワードを使用してコンストラクターを定義しようとすると、コンパイル時エラーが発生します

一般に、静的はクラスレベルを意味します。 初期値の割り当てにはコンストラクターが使用されます インスタンス変数の場合。 静的およびコンストラクターの両方 異なっており、互いに反対です。 初期値を割り当てる必要があります インスタンス変数の場合、コンストラクターを使用できます 。 静的変数を割り当てる必要があります 静的ブロックを使用できます

public class StaticConstructorTest {
   int x = 10;
   // Declaratiopn of Static Constructor
   static StaticConstructorTest() {
      System.out.println("Static Constructor");
   }
   public static void main(String args[]) {
      StaticConstructorTest sct = new StaticConstructorTest();
   }
}

上記の例では、静的コンストラクターを作成しました 。 コードはコンパイルされません ここでは修飾子staticは許可されていませんというエラーがスローされる可能性があります 。

出力

StaticConstructorTest.java:4: error: modifier static not allowed here

  1. Javaで複数のcatchブロックを持つtryブロックを定義できますか?

    はい、Javaで複数のcatchブロックを含む1つのtryブロックを定義できます。 すべての試行は、少なくとも1つのキャッチブロックに関連付ける必要があり、関連付ける必要があります。 tryブロックで例外オブジェクトが識別され、複数のcatchブロックがある場合は常に、catchブロックが定義された順序に基づいてcatchブロックの優先順位が与えられます。 常に最初のキャッチブロックが最優先されます。最初のcatchブロックが識別された例外オブジェクトを処理できない場合、すぐ次のcatchブロックが考慮されます。 例 class TryWithMultipleCatch {  

  2. インターフェイスのJava8静的メソッド

    インターフェースにはJava8以降の静的ヘルパーメソッドを含めることもできます。 public interface vehicle {    default void print() {       System.out.println("I am a vehicle!");    }    static void blowHorn() {       System.out.println("Blowing horn!!!"); &nb