2

その最もよく知られている質問アプレット対アプリケーションと一般的な答えはinit()、アプリケーションがから始まるのに対し、アプレットはから始まるというものmain()です。

アプレットのライフサイクル: init() -> start() -> paint() -> stop() -> destroy()

しかし、アプリケーションはどうですか?? main()から始まり、次にdestroy() ?? またはコーディング部分に依存しますか?? 私が間違っている場合は、いつでも修正してください。

これが単純なJavaコードだとしましょう

public class MyClass {

    public static void main(String  args[])
    {
        System.out.println("Hello World !!");
    }
}

これを見つけましが、これはすべて(アプレット、サーブレット、アプリケーション)に共通のライフサイクルだと思います。

4

2 に答える 2

6

あなたが投稿したリンクは、アプリケーションを作成するサイクルについて語っています。

Java アプリケーションの場合、ライフサイクルは単なるmain()機能です。アプリケーションは、すべての非デーモン スレッドが終了したとき (デフォルトではスレッドは非デーモンです)、またはSystem.exit()が呼び出されたときに終了します。

スレッドを開始しない場合、唯一のスレッドはメイン スレッドであり、main()関数の最後で終了します。

于 2012-12-12T14:47:19.357 に答える
0

@Thirlerの投稿の上に追加したい。

mainメソッドを持たないクラスの存続期間は、オブジェクトのスコープによって制御されます。したがって、オブジェクトが(newによって)作成されると、それらは存在し、クラスに対して作成された参照の数が0になるとスコープから外れます。

したがって、クラスの存続期間は、すべてのオブジェクトがガベージコレクションされると、またそれらが弱く、ソフトでファントム参照でない場合に終了します。

ライフサイクル:

クラスロード->オブジェクトの作成->無効化されたすべてのオブジェクト->ガベージコレクション--->終了

于 2012-12-12T15:03:16.503 に答える