亲宝软件园·资讯

展开

浅谈java什么时候需要用序列化 

菠菜很好吃 人气:0

一、Java序列化概述

简单说就是为了保存在内存中的各种对象的状态(也就是实例变量,不是方法),并且可以把保存的对象状态再读出来。虽然你可以用你自己的各种各样的方法来保存objectstates,但是Java给你提供一种应该比你自己好的保存对象状态的机制,那就是序列化。

二、什么时候用序列化?

三、项目创建很多对象怎么优化?

场景:

优化思路一:加条件判断

假如创建的对象,需要在 if 判断条件中使用,则在 if 判断条件中new新对象,这样可以减少对象的创建。

优化思路二:使用clone浅拷贝

clone的最大特点就是,不会去调用任何构造方法

import lombok.Data;
import java.io.Serializable;

@Data
public class User implements Serializable,Cloneable{

    private static final long serialVersionUID = 1L;
    private static User  user = new User();
    /**
     * 用户id
     */
    private Long userId;
    /**
     * 用户名称
     */
    private String userName;
    /**
     * 调用对象创建优化
     * @return
     */
    public static User getInstance(){
        try {
            return (User) user.clone();
        } catch (CloneNotSupportedException e) {
            e.printStackTrace();
        }
        return new User();
    }
}
if (flag) {
     // 将创建对象放到if中,不进入if则不创建,提高效率
     //SysMenuManagerGrant grant = new SysMenuManagerGrant();
     User user = User.getInstance();
}

加载全部内容

相关教程
猜你喜欢
用户评论