JodaTime,实例化一个类

时间:2012-12-03 11:23:37

标签: java jodatime

我有一个问题让我很困惑。首先,我将告诉我对从特定类实例化对象的了解。

  1. 我们通过声明一个类型(也可能是一个接口类型),一个引用名称(变量)来创建一个类的实例(或对象),在相等运算符的另一边我们使用关键字 new 为特定类型的对象保留内存。我们用一个构造函数调用完成一个语句(不能是接口,因为接口无法实例化)

  2. 某些类具有构造函数,声明为 private 。这意味着我们不能使用构造函数调用来创建新对象。

  3. 作为替代方案,某些类“允许”通过公共或静态方法(例如Calendar类)实例化对象。我们得到这个类的实例:

  4. 日历variableRepresentingAnInstanceOrObject = Calendar.getInstance();

    (如果上面有问题,你可以纠正我)

    好了,现在我有一个问题,因为我是java begginer,我对JodaTime libary中的一些类有点困惑。 有一些名为MinutesHours的类。我已经阅读了这些类的文档,但我无法理解如何对它们进行实例化。我不能使用关键字 new ,因为构造函数是私有的(eclipse告诉我构造函数不可见)。在声明分钟(但不是几小时)时,说:分钟数在构造函数中设置,可以使用getMinutes()查询。据我所知,他们既没有公共或静态的方法(比如日历类)。

    哪个构造函数?怎么称呼呢?

    我在文档中遗漏了什么,或者在我学习java的时候错过了什么?有人可以向我解释一下。我真的会很高兴。在此先感谢=)

2 个答案:

答案 0 :(得分:2)

该类提供了一些工厂方法,例如:

Minutes m = Minutes.minutes(5); // a period of 5 minutes
Minutes m = Minutes.minutesBetween(date1, date2);

检查返回static对象的javadoc中的Minutes方法,其中大多数是工厂方法。

答案 1 :(得分:0)

Minutes有一个静态工厂方法minutes(int minutes)HoursHours.hours(int hours)