Does deserializing an object in another JVM call the static initializer?
It does not within the same JVM as the class is already loaded while serializing it, however what about in another jvm? Would the static initializer get called?
Objects don't have static initializers. Classes have static initializers. And those static initializers are called when the class is loaded.
And there's no reason why a JVM, when deciding whether to load a class, would pay any attention to any other JVMs which happen to be running elsewhere. If it needs the class then it's going to load the class.
As you can see this has very little to do with serialization of objects.