Java 这些JDatePicker属性做什么?

Java 这些JDatePicker属性做什么?,java,properties,datepicker,Java,Properties,Datepicker,我最近在中实现JDatePicker的上下文中查看了以下代码 我想知道属性键“text.month”和“text.year”的作用。我试着实现这段代码,并在省略它们时说没有更改。此外,我尝试在Properties类中搜索键列表,但没有发现任何有用的东西。有谁知道这些属性键是做什么的,或者我如何知道省略它们是否可以接受吗?这些用于国际化支持。JDateComponentFactory有代码从JDatePicker发行版中依赖于语言环境的资源包中加载这些组件。我认为您应该使用工厂而不是构造函数,让它

我最近在中实现JDatePicker的上下文中查看了以下代码


我想知道属性键“text.month”和“text.year”的作用。我试着实现这段代码,并在省略它们时说没有更改。此外,我尝试在Properties类中搜索键列表,但没有发现任何有用的东西。有谁知道这些属性键是做什么的,或者我如何知道省略它们是否可以接受吗?

这些用于国际化支持。
JDateComponentFactory
有代码从JDatePicker发行版中依赖于语言环境的资源包中加载这些组件。我认为您应该使用工厂而不是构造函数,让它适当地设置属性,这样您就不会与它们使用的键字符串耦合。

只是猜测:也许这代表了一个糟糕的mans内部化解决方案;含义:在应用程序中不需要硬编码字符串“Today”,因为当应用程序使用不同的语言(例如德语)时,“Today”字段最好是“Heute”(德语表示“Today”)。这是我能想到的唯一解释(当然,当字符串仍然在另一段代码中硬编码时,使用属性也无济于事)。
UtilDateModel model = new UtilDateModel();
//model.setDate(20,04,2014);
// Need this...
Properties p = new Properties();
p.put("text.today", "Today");
p.put("text.month", "Month");
p.put("text.year", "Year");
JDatePanelImpl datePanel = new JDatePanelImpl(model, p);
// Don't know about the formatter, but there it is...
JDatePickerImpl datePicker = new JDatePickerImpl(datePanel, new DateLabelFormatter());