アプリの起動から終了までは, 変数に情報を保存しておくことができます. アプリの終了後も情報を保存し, 次回の起動の際に再び読み込む, という仕組みも用意されています. それが DoJa のスクラッチパッド, MIDP のレコードストア です. この2つは, アプリからみるとファイル入出力のようなものですが, だいぶ仕組みは違います. また, これらの仕組みは, 情報漏洩などセキュリティ上の弱点となりうるため, いろいろな制限が課されています.
サンプルは, MemorySample.java です. ADF 設定で, DoJa なら SPSize を必要なバイト数(下の例なら16)に, MIDP なら MIDlet-Data-Size を必要なバイト数(下の例なら1000くらい?)に設定して, メモリーを確保する必要があります.
cat Sample.javah | cpp -P -C -DMIDP=1 | nkf -sc | cat -s > Sample.javaなどとして, それぞれの source を生成しています. DOJA Builder/MIDP Builder のプリプロセッサでも, わずかな変更(#if と #endif の間に #define を書けないことに対応する)でこのような source を処理できます.