我有一个用例,希望用户可以在UI中指定自己的日历。为此,我想创建一个自定义年表,以指定有关日历的所有信息。
我使用编年史而非自定义类的原因是我希望能够使其与标准编年史兼容。

我看过实现Chronology或扩展AbstractChronoolgy的情况,但是在这些类中找不到自己的名字,因此无法找到有关此用例的资源。

这些是我需要能够为每个年表自定义的东西:


一天中的小时数
一周中天的数量和名称(即公历中的周一至周日,每个24h)
一个月中的天数和月份的名称(即1月-12月,在公历中为28-31天)
一年中的月数
下一个更大规模的年数(公历中的100个世纪,省略了数十年)
哪个时代存在以及何时开始(公历的公元前和公元0年)


用Java的时间顺序可行吗?如果是,我将如何处理?任何建议或链接将不胜感激。
我不需要可定制性的完整实现,仅提示我可以在何处设置自定义日历/年表即可。

提前致谢
落料

最佳答案

不是完全。 Chronology旨在表示ISO / Gregorian以外的现有日历系统。它将日期分配给周,月,年,时代的系统。它不涵盖一天中的时间。因此,它不会为您提供一天中其他小时数的可能性。 (不过,您可以实现TemporalUnit接口,将“您的小时”表示为一天的一小部分。)

要实现Chronology,请首先扩展AbstractChronology。您可能需要在该过程中实现接口ChronoLocalDateChronoLocalDateTimeEra等。最后,您必须使用ServiceLoader注册实现。参见the API documentation of Chronology

09-25 23:45