具有默认行为且具有Seri​​alizable的功能接口

mrp*_*x13 5 java interface serializable compiler-warnings default-method

当没有默认方法的接口扩展可序列化时,一切正常。但是,当该接口的默认方法出现时,我们将显示警告:

MyInterface.java:可序列化的类MyInterface没有serialVersionUID的定义

当我将该接口更改为抽象类时,它变得很有趣。错误消失。

总结警告发生的表格如下:

|----------------------------|------------------|
|            Type            |      WARNING     |
|----------------------------|------------------|
| interface with no defaults |         NO       |
|----------------------------|------------------|
| interface with defaults    |        YES       |
|----------------------------|------------------|
| abstract class             |         NO       |
|----------------------------|------------------|
Run Code Online (Sandbox Code Playgroud)

有什么原因还是只是一个错误?