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

Javaの静的ブロックとコンストラクターの違いは何ですか?


静的ブロック

  • s タティックブロック クラスの読み込み時に実行されます 。
  • s タティックブロック main()メソッドを実行する前に実行されます 。
  • 静的 ブロック 名前はありません プロトタイプで。
  • クラスの読み込み時に実行する必要のあるロジックが必要な場合は、そのロジックを静的ブロック内に配置する必要があります。 クラスの読み込み時に実行されるようにします。

構文

static {
   //some statements
}

public class StaticBlockTest {
   static {
      System.out.println("Static Block!");
   }
   public static void main(String args[]) {
      System.out.println("Welcome to Tutorials Point!");
   }
}

出力

Static Block!
Welcome to Tutorials Point!


コンストラクター

  • コンストラクター オブジェクトの作成中に実行されます Javaで。
  • コンストラクター クラスのオブジェクトの作成中に呼び出されます。
  • コンストラクターの名前 常にクラスと同じ名前である必要があります 。
  • コンストラクター オブジェクトに対して1回だけ呼び出され、何度も呼び出されます オブジェクトを作成できるので。つまり、オブジェクトが作成されると、コンストラクターが自動的に実行されます。

構文

public class MyClass {
   //This is the constructor
   MyClass() {
      // some statements
   }
}

public class ConstructorTest {
   static {
      //static block
      System.out.println("In Static Block!");
   }
   public ConstructorTest() {
      System.out.println("In a first constructor!");
   }
   public ConstructorTest(int c) {
      System.out.println("In a second constructor!");
   }
   public static void main(String args[]) {
      ConstructorTest ct1 = new ConstructorTest();
      ConstructorTest ct2 = new ConstructorTest(10);
   }
}

出力

In Static Block!
In a first constructor!
In a second constructor!

  1. JavaのJFrameとJDialogの違いは何ですか?

    JFrame フレームに追加されたコンポーネントはそのコンテンツと呼ばれ、 contentPaneによって管理されます。 。 JFrameにコンポーネントを追加するには 、 contentPaneを使用する必要があります 代わりに。 JFrame タイトルのウィンドウが含まれています 、境界線 、(オプション)メニュー バー およびユーザー -指定 コンポーネント 。 JFrame 移動できます 、サイズ変更 、アイコン化 JComponentのサブクラスではありません 。 デフォルトでは、JFrameは左上の角に表示されます 画面のr。指定した場所にフレームを表示するには

  2. JavaのGridLayoutとGridBagLayoutの違いは何ですか?

    GridLayout すべてのコンポーネントを長方形のグリッドに配置し、同じサイズの長方形に分割します 各コンポーネントは長方形の中に配置されますが、 GridBagLayout 柔軟です レイアウト マネージャー コンポーネントを垂直方向と水平方向に整列させます コンポーネントが同じサイズである必要はありません。各GridBagLayout オブジェクトは、動的な長方形のセルのグリッドを維持します 各コンポーネントがコンポーネントと呼ばれる1つ以上のセルを占有します 表示 エリア 。 GridLayout GridLayout コンポーネントを長方形のグリッドに配置します。セル