自Joda-Time时间2.0版以来,引入了静态方法org.joda.time.DateTime#now()
。
对我来说,尚不清楚使用new DateTime()
有什么好处(因为代码始终可以委托)。
public static DateTime now() {
return new DateTime();
}
从Java文档中也不清楚我应该选择哪一个。
new DateTime
在默认时区中使用
ISOChronology
获得一个{@code DateTime}设置为当前系统毫秒时间。
DateTime#now()
在默认时区中使用
ISOChronology
构造一个设置为当前系统毫秒时间的实例。
有人可以解释在哪种用例中应该优先使用哪一种吗?
答案 0 :(得分:2)
using(var db = new DBTrafosContext())
{
var a = db.Reg.FirstOrDefault();
if(a != null){
Regulacion newRegulacion = new Regulacion(a);
}
}
要求分配一个新对象。 new DateTime()
实例是不可变的,因此可以跨请求重用单个对象。这样可能会减少内存流失。
但是在很大程度上,我怀疑您使用它是否重要。
答案 1 :(得分:1)
添加了now()
方法,使Java 8中的Joda-Time更加接近java.time.*
,从而使转换过程更加容易。这两种方法的行为完全相同。
答案 2 :(得分:0)
我认为没有任何区别。在代码中,使用DateTime.now()看起来比新的DateTime()更为优雅。这是DateTime.now()源代码。
caffeineCacheManager