JAVA的深浅拷备
2024-10-07 07:50:28
package com.jd.ng.shiro.testFactory; import java.io.*; /**
* @author wangzhilei
* @Author: husToy.Wang
* @Date: 2019/10/30 15:20
* @Version 1.0
* @date 2019-10-30 15:21
*/
public class ProtoType implements Cloneable, Serializable { private static final long serialVersionUID = 1L; private String string; private SerializableObject obj; /*浅copy*/
@Override
protected Object clone() throws CloneNotSupportedException {
return (ProtoType) super.clone();
} /* 深复制 */
public Object deepClone() throws IOException, ClassNotFoundException { /* 写入当前对象的二进制流 */
ByteArrayOutputStream bos = new ByteArrayOutputStream(); // 缓冲区
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(this); /* 读出二进制流产生的新对象 */
ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray());
ObjectInputStream ois = new ObjectInputStream(bis);
return ois.readObject(); } public static long getSerialVersionUID() {
return serialVersionUID;
} public String getString() {
return string;
} public SerializableObject getObj() {
return obj;
}
} class SerializableObject implements Serializable {
private static final long serialVersionUID = 1L;
}
最新文章
- 基于TCP协议的socket通信
- [Template]高精度模板
- jQuery的.html(),.text()和.val()的概述及使用
- 刷了OpenWrt Attitude Adjustment 12.09,很满意
- loj 1031(区间dp+记忆化搜索)
- [转载]CAD文件版本
- tomcat war包部署
- (转)Redis 集群方案
- Linux学习笔记总结--配置iptables防火墙
- 13_Android的生命周期
- 使用Jenkins自动发布Windows服务项目
- 数位dp-入门模板题 hdu2089
- Fescar: Fast &; Easy Commit And Rollback
- hibernate关联关系映射之配置文件
- WPF-利用Blend写的平面控制闸门开关动画
- js,jq获取父,兄弟,子节点整理
- C# 倒计时
- Weird journey CodeForces - 788B (路径计数)
- 【js】批量判断表单中的文本框非空
- CDN加速的实现 --- varnish
热门文章
- JS获取select被选中的option的值
- c++实验9 图及图的操作实验
- 阶段3 1.Mybatis_03.自定义Mybatis框架_1.自定义Mybatis的分析-执行查询所有分析
- oracle-不完全数据库恢复-被动恢复-RMAN-06025/ORA-01190
- House_Of_Spirit ctf oreo程序分析
- Powershell 脚本输出前十条消耗内存的进程到excel
- [百家号]APT组织简介2019
- Java - Java Mail邮件开发(3)spring +Java Mail + Velocity
- 秒懂Vuejs、Angular、React原理和前端发展历史
- MySQL总结(3)