クライアント サーバー セットアップで、サーバーから送信されたオブジェクトのクラス定義を変更し、クライアント側でクラッシュすることが予想されました (クライアント jar はこれらの変更を反映するように更新されていません)。
ただし、クラッシュしません。
注: クライアントがオブジェクトを使用する方法によっては、クラッシュを回避できる場合があります。クライアントは、逆シリアル化されたオブジェクトをキャストしたり、削除されたフィールドを使用したりすることはありません。このオブジェクトは、Jython を介して Python スクリプトからのみ使用されます。Jython は、オブジェクトのフィールドを使用するときに、おそらく遅延バインディング メカニズム (リフレクション?) を採用しているため、物事が可能になります。これは、シリアライゼーションにクラスの署名が含まれていることも前提としていますが、これは true です (ObjectOutputStream のドキュメントで言及されています)。
また、serialVersionUid を変更することはありません。
私の推論は正しいように見えますか?