最近在开发过程中使用插件检测出代码的一些问题;
在开发过程中我习惯使用new Date()来获取当前时间。
//100天
private final Long DEFAULT_ACCESS_TIME = 1000 * 60 * 60 * 24 * 100L;
//设置一个过期时间
Date expiration = new Date(new Date().getTime()+ DEFAULT_ACCESS_TIME);
但new Date()所做的事情其实就是调用了System.currentTimeMillis()。如果仅仅是需要或者毫秒数,那么完全可以使用System.currentTimeMillis()去代替new Date(),效率上会高一点。如果需要在同一个方法里面多次使用new Date(),通常性能就是这样一点一点地消耗掉。
所以我们改用System.currentTimeMillis()代替new Date().getTime()
Date expiration = new Date(System.currentTimeMillis()+ DEFAULT_ACCESS_TIME);