Joda-Time new DateTime() vs DateTime.now()

Laz*_*ass 5 java jodatime

从 Joda-Time time version 2.0org.joda.time.DateTime#now()开始,引入了静态方法。对我来说,不清楚使用new DateTime()(因为代码只是委托)有什么好处。

public static DateTime now() {
    return new DateTime();
}
Run Code Online (Sandbox Code Playgroud)

同样从 java doc 中,我不清楚我应该更喜欢哪一个。

new DateTime
Run Code Online (Sandbox Code Playgroud)

使用ISOChronology默认时区获取设置为当前系统毫秒时间的 {@code DateTime} 。

DateTime#now()
Run Code Online (Sandbox Code Playgroud)

使用ISOChronology默认时区构造一个设置为当前系统毫秒时间的实例。

有人可以解释在哪个用例中应该首选哪个用例吗?

T.J*_*der 6

new DateTime()要求分配一个新对象。DateTime.now可以跨请求重用单个对象,因为DateTime实例是不可变的。这可能会减少内存流失。

但很大程度上我怀疑你使用哪种方式很重要。