2011-04-22 71 views
0

更新:对不起,这应该是关于GWT的DateTimeFormat而不是Java的DateFormat的问题。为什么GWT的DateTimeFormat使用静态工厂方法?

嗨。我试图扩展GWT的DateTimeFormat。有谁知道为什么我们必须使用静态工厂方法来获取GWT的DateTimeFormat对象吗?隐藏类的构造函数的目的是什么?是否有任何问题,如果我创建新的静态工厂方法,简单地委托给受保护的构造函数?

回答

1

工厂方法提供了“命名构造函数”。当其他选项将用于提供大量具有不同参数集的构造函数时,您可以使用它 - 这将不太方便 - 只能猜测使用哪一个,因为所有构造函数都具有相同的名称。

此外在工厂方法中,您不必每次都创建新对象。这使您可以轻松实现某种缓存并控制创建的实例。

1

java.util.Date是 的一个证明,即使是精彩的程序员 都可能搞砸了。 java.util.Calendar, Sun被授权纠正日期 乱七八糟,这也证明了平均程序员也能搞砸的事实。

Why is the Java date API (java.util.Date, .Calendar) such a mess?

+0

我不会说这是因为混乱的工厂......工厂从我的角度来看爽:) – 2011-04-22 09:33:27

相关问题