为什么我们在扩展 RuntimeException 时需要 serialVersionUID?

yog*_*rma 5 java serialization serialversionuid runtimeexception

为什么我们在扩展 RuntimeException 时需要 serialVersionUID?RuntimeException 是一个可序列化的类吗?

public class DataNotFoundException extends RuntimeException {       
    /**
     * 
     */
    private static final long serialVersionUID = 1;

    public DataNotFoundException(String str)
    {
        super(str);
    }
}
Run Code Online (Sandbox Code Playgroud)

Evg*_*eev 6

RuntimeException延伸ExceptionException延伸ThrowableThrowable实现Serializable. DataNotFoundException也是如此Serializable


Nat*_*hes 5

是的,Throwables 是可序列化的。可序列化意味着该类的对象可以转换为字节序列,可以由另一个 jvm 重新组装。使异常可序列化意味着它可以通过网络在分布式应用程序的各层之间传输。