検索
ホームページJava&#&チュートリアルJavaの静的ブロック、フリーブロック、コンストラクターの実行順序は何ですか?

静的ブロック形式:
static
{
}
静的ブロックはクラスがロードされるときに実行され、サブクラスをロードするときに親クラスがプリロードされるため、親クラスに静的ブロックがある場合は、それが最初に実行されます。サブクラスの静的ブロックはすぐに実行されます。
クラス内に複数の静的ブロックがある場合、コーディング順に実行されます。
注: クラスは 1 回だけロードされるため、各静的ブロックは 1 回だけ実行されます。
フリーブロック形式:
{
}
空きブロックは、クラスがインスタンス化されるときに実行されます。
サブクラスをインスタンス化する場合、そのコンストラクターはまずその親クラスをインスタンス化します。したがって、親クラスの空きブロックが最初に実行され、その後、親クラスの構築が開始されます。親クラスのコンストラクタが実行された後、サブクラスのコンストラクタに操作権が戻り、サブクラスの空きブロックの実行が開始されます。 次に、サブクラスの構築を開始します。

以下は、親クラスの静的ブロック、サブクラスの静的ブロック、親クラスのフリー ブロック、サブクラスのフリー ブロック、親クラスのコンストラクター、サブクラスの組み合わせです。このキーワードとスーパーキーワードの例であるコンストラクターは、分析して記録する価値があると感じます。

[java] ビュー plaincopy

  1. package com.lsky.test;


  2. ##public class Father {
  3. ## private int sum;
  4. //親クラスの静的ブロック
  5. ## static {

  6. ## System.out.println("Happy New Year 2010");

  7. }

  8. public void first (int i){

  9. sum= i sum -1 i--;

  10. System.out.println( sum);

  11. }

  12. //親クラスのパラメーターなしのコンストラクター

  13. public Father (){

  14. System.out.println("Good day");

  15. }

  16. //パラメータ付きコンストラクター

  17. ## public Father(String s){
  18. System.out.println("私たちは学生です ");
  19. }
  20. //親クラスのブロックを解放します
  21. {
  22. System.out.println("菩提樹には木もないし、鏡も台ではない。そもそも何もないのに、どうしてホコリが出るのか");
  23. }
  24. ##パッケージ com.lsky.test;

  25. ## public class Son extends Father {

  26. private int sum;

  27. private static Father Father;

  28. //サブクラス内のパラメータを含むコンストラクタ (パラメータを含むコンストラクタ)

  29. public Son(Father 父){

  30. this();

  31. Father.first(8);

  32. }

  33. //サブクラスのパラメータなしコンストラクタ (パラメータなしコンストラクタ)

  34. public Son(){

  35. # this.punk(6);

  36. }


    ## public void first(int i){
  37. ## sum=sum i ;

  38. System.out.println(sum);

  39. # }

  40. # //サブクラスの静的ブロック
  41. static{
  42. ## 父 f=new Son();
  43. ## f.first(4);

  44. }

  45. ## int punk(int sum){

  46. sum=sum;

  47. return sum;

  48. }

  49. //サブクラスのブロックを解放します

  50. {

  51. System.out.println("海を越えるのが難しかった時代がありました。呉山を除いて、それは雲ではありませんでした");

  52. }

  53. public static void main(String argsp[]){

  54. 息子 Son=new Son(new Son());


  55. ## }

  56. }

[java] ビュー plaincopy

    ##//出力結果は次のとおりです:

  1. 2010 年明けましておめでとうございます
  2. 菩提樹もないし、鏡も台もない、そもそも何もないのに、どこでゴミをとればいいの?
  3. 美しい日
  4. かつて、海は克服するのが困難でした、呉山を除いて、それは雲ではありませんでした
  5. 4
  6. 菩提樹には木もないし、鏡も台もない、そもそも何もない、塵はどこにある
  7. # # 美しい日
  8. かつて海は水で満たされていたが、呉山を除いては雲ではない
  9. 菩提樹はない、ミラーはスタンドではありません、そもそも何もないので、どこにゴミが発生するのでしょうか?
  10. こんにちは
  11. かつては海を越えるのは困難でしたが、呉山を除いては雲ではありません
  12. 8

以上がJavaの静的ブロック、フリーブロック、コンストラクターの実行順序は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事は亿速云で複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか?高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか?Mar 17, 2025 pm 05:46 PM

この記事では、Javaプロジェクト管理、自動化の構築、依存関係の解像度にMavenとGradleを使用して、アプローチと最適化戦略を比較して説明します。

適切なバージョン化と依存関係管理を備えたカスタムJavaライブラリ(JARファイル)を作成および使用するにはどうすればよいですか?適切なバージョン化と依存関係管理を備えたカスタムJavaライブラリ(JARファイル)を作成および使用するにはどうすればよいですか?Mar 17, 2025 pm 05:45 PM

この記事では、MavenやGradleなどのツールを使用して、適切なバージョン化と依存関係管理を使用して、カスタムJavaライブラリ(JARファイル)の作成と使用について説明します。

カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか?カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか?Mar 17, 2025 pm 05:44 PM

この記事では、カフェインとグアバキャッシュを使用してJavaでマルチレベルキャッシュを実装してアプリケーションのパフォーマンスを向上させています。セットアップ、統合、パフォーマンスの利点をカバーし、構成と立ち退きポリシー管理Best Pra

キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか?キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか?Mar 17, 2025 pm 05:43 PM

この記事では、キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPAを使用することについて説明します。潜在的な落とし穴を強調しながら、パフォーマンスを最適化するためのセットアップ、エンティティマッピング、およびベストプラクティスをカバーしています。[159文字]

Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか?Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか?Mar 17, 2025 pm 05:35 PM

Javaのクラスロードには、ブートストラップ、拡張機能、およびアプリケーションクラスローダーを備えた階層システムを使用して、クラスの読み込み、リンク、および初期化が含まれます。親の委任モデルは、コアクラスが最初にロードされ、カスタムクラスのLOAに影響を与えることを保証します

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター