2011-10-25 6 views
6

Javaプログラムの現在の状態を保存してからリロードすることはできますか?プログラムはかなり複雑です。私はちょうどファイルに現在の状態を保存し、それをリロードできるようにする必要があります。あなたは私をJavaライブラリまたはその場所を詳しく知る場所に紹介してください。プログラムの現在の状態を保存するためのJavaメソッド

+2

わかりません。同じ状態を再開する必要がある場合は、ファイルから再ロードするだけです。これがゲームの「状態を保存する」方法です。単純例えば –

+0

参照[このスレッド(http://stackoverflow.com/questions/7777640/what-is-the-best-practice-for-setting-jframe-locations-in-java/7778332#7778332)(ちょうどいくつかのプロパティ)を保存/復元します。より複雑な状態のために、それは[ 'XMLEncoder'(http://download.oracle.com/javase/7/docs/api/java/beans/XMLEncoderを使用して読み取る/書き込むことができるBeanを作成する価値があるだろう。 HTML)/ [ 'XMLDecoder'(http://download.oracle.com/javase/7/docs/api/java/beans/XMLDecoder.html)。 –

答えて

9

「JVM全体の状態を保存する」という本来の方法はありません。

しかし、アプリケーションの関連する状態を1つ以上のオブジェクトにカプセル化してから、それらのオブジェクトを直列化することができます。ほとんどの場合、アプリケーションの状態は(主に)いくつかのオブジェクトにカプセル化されているため、実際よりも複雑に思えます。

This serialization tutorial詳細については、see this pageを参照してください。

+0

答えをありがとう。本当に役に立ちます。 – Zee

2

Javaプログラムの「状態」は複雑な獣です。これには、完全ヒープ、すべてのスレッドの実行ポイント、ローカル変数の値などが含まれます。

ステートを保存しておき、後でこれを新しいプログラムにロードします。 java.ioのクラスを使用して、ファイルに状態を書き込み、後でそれらを再度読み取ることができます。あなたは完全に一つにすべて1をリロードすることができるだろうが、状態を保存しませんほとんどのプログラムは、ファイル内の変数のダンプを行う場合

http://download.oracle.com/javase/7/docs/api/java/io/package-summary.html

関連する問題