実行主体であるスレッドを実行中の状態を保ったままネットワークをまたいで異なるプラットフォーム間、異なるJava仮想マシン間でメソッド呼び出しひとつで、または、外部からの指示ひとつで移動させることができます。レッドを保存、また、復帰して実行を継続できます。エージェント移動可能なスレッドを移動エージェントとみなします。Javaのプログラムで可能なことは何でもできます。移動先で実行を継続することができません。システムや利用者が指定したメソッドが呼び出されます。移動することを意識してプログラムを書く必要があります。メソッド呼び出しひとつで、移動、移動先での実行の継続が可能です。利用者はローカルなプログラムとの差をほとんど意識する必要がありません。インストールしておく必要がありません。スレッド外部化で、実行中の状態の保存が可能です。本質的な部分に労力を割く必要がなくなります。移動させることができます。