Javaの静的メソッドまたは静的コードブロックに課せられる制限は何ですか?
静的メソッドと静的ブロック
静的メソッドはクラスに属し、クラスとともにメモリにロードされます。オブジェクトを作成せずに呼び出すことができます。 (クラス名を参照として使用します。)
一方、静的ブロック staticキーワードを持つコードのブロックです。一般に、これらは静的メンバーを初期化するために使用されます。 JVMは、クラスのロード時にmainメソッドの前に静的ブロックを実行します。
例
public class Sample { static int num = 50; static { System.out.println("Hello this is a static block"); } public static void demo() { System.out.println("Contents of the static method"); } public static void main(String args[]) { Sample.demo(); } }
出力
Hello this is a static block Contents of the static method
静的ブロックと静的メソッドの制限
静的メソッド
-
静的コンテキストから非静的メンバー(メソッドまたは変数)にアクセスすることはできません。
-
これとsuperは静的コンテキストでは使用できません。
-
staticメソッドは、静的型データ(静的型インスタンス変数)にのみアクセスできます。
-
静的メソッドをオーバーライドすることはできません。隠すだけです。
静的ブロック
-
静的ブロックからは何も返すことができません。
-
静的ブロックを明示的に呼び出すことはできません。
-
静的ブロックで例外が発生した場合は、try-catchペアでラップする必要があります。投げることはできません。
-
これとスーパーは使用できません 静的ブロック内のキーワード。
-
静的ブロックの場合、実行の順序を動的に制御することはできません。静的ブロックは宣言の順序で実行されます。
-
Javaのpaint()メソッドとrepaint()メソッドの違いは何ですか?
Paint()とRepaint() paint(): このメソッドは、このコンポーネントをペイントするための命令を保持します。 Java Swingでは、paintが paintBorder()を呼び出すときに、paint()メソッドの代わりにpaintComponent()メソッドを変更できます。 paintComponent() およびpaintChildren() メソッド。このメソッドを直接呼び出すことはできません。代わりに、 repaint()を呼び出すことができます。 。 repaint() :このメソッドはオーバーライドできません。 paint()を制御します サイ
-
JavaでのsetBounds()メソッドの使用は何ですか?
レイアウト マネージャー 追加されたコンポーネントの位置とサイズを自動的に決定するために使用されます。レイアウトマネージャーがない場合は、コンポーネントの位置とサイズを手動で設定する必要があります。 setBounds() このような状況では、メソッドを使用して位置とサイズを設定します。コンポーネントの位置とサイズを手動で指定するには、フレームのレイアウトマネージャーを nullにすることができます。 。 setBounds() setBounds() メソッドには4つの引数が必要です。最初の2つの引数は、x座標とy座標です。 左上の コーナー コンポーネントの3番目の引数は幅です コ