2
javaの逆シリアル化時にコンストラクタを呼び出さずに、直列化されたクラスのオブジェクトを動的に作成する方法はありますか? JVMがオブジェクトインスタンスを作成するために使用するメカニズムは何ですか?javaの逆シリアル化時にコンストラクタを呼び出さずに、直列化されたクラスのオブジェクトを動的に作成する方法はありますか?
javaの逆シリアル化時にコンストラクタを呼び出さずに、直列化されたクラスのオブジェクトを動的に作成する方法はありますか? JVMがオブジェクトインスタンスを作成するために使用するメカニズムは何ですか?javaの逆シリアル化時にコンストラクタを呼び出さずに、直列化されたクラスのオブジェクトを動的に作成する方法はありますか?
それはJVMによって異なりますが、Sun/Oracleの/ OpenJDKのはsun.misc.Unsafe.allocateInstance(クラス)
/** Allocate an instance but do not run any constructor.
Initializes the class if it has not yet been. */
public native Object allocateInstance(Class cls)
throws InstantiationException;
http://www.docjar.com/html/api/sun/misc/Unsafe.java.html
を使用しています。これは、あなたがちょうど約の新しいインスタンスを作成することができます何かクラスの新しいインスタンスではありません。