您可以使用writeObject()方法来实现此目的.
您可以使用writeObject自定义对象的序列化行为,如果您不允许序列化Class您覆盖此方法并抛出错误.
private void writeObject(java.io.ObjectOutputStream stream)
throws IOException {
throw new IOException('No serialization not allowed')
}
Run Code Online (Sandbox Code Playgroud)
无条件抛出异常的实现readObject和writeObject方法IOException。丑陋但有效。
不幸的是,你不能阻止执行自己的子子类readObject和writeObject方法,以恢复“串行化” ......除非你声明的子类的final。
当然,这是一个有问题的OO设计(它违反了Liskov替换原理),但是如果您确实需要这样做的话……
| 归档时间: |
|
| 查看次数: |
2840 次 |
| 最近记录: |