我有一个问题让我很困惑。首先,我将告诉我对从特定类实例化对象的了解。
我们通过声明一个类型(也可能是一个接口类型),一个引用名称(变量)来创建一个类的实例(或对象),在相等运算符的另一边我们使用关键字 new 为特定类型的对象保留内存。我们用一个构造函数调用完成一个语句(不能是接口,因为接口无法实例化)
某些类具有构造函数,声明为 private 。这意味着我们不能使用构造函数调用来创建新对象。
作为替代方案,某些类“允许”通过公共或静态方法(例如Calendar类)实例化对象。我们得到这个类的实例:
日历variableRepresentingAnInstanceOrObject = Calendar.getInstance();
(如果上面有问题,你可以纠正我)
好了,现在我有一个问题,因为我是java begginer,我对JodaTime libary中的一些类有点困惑。 有一些名为Minutes或Hours的类。我已经阅读了这些类的文档,但我无法理解如何对它们进行实例化。我不能使用关键字 new ,因为构造函数是私有的(eclipse告诉我构造函数不可见)。在声明分钟(但不是几小时)时,说:分钟数在构造函数中设置,可以使用getMinutes()查询。据我所知,他们既没有公共或静态的方法(比如日历类)。
哪个构造函数?怎么称呼呢?
我在文档中遗漏了什么,或者在我学习java的时候错过了什么?有人可以向我解释一下。我真的会很高兴。在此先感谢=)
答案 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)
,Hours
有Hours.hours(int hours)
。