Java日期时间主要API:java.time.chrono.Chronology接口及其实现类IsoChronology

本文介绍了Java中的Chronology接口,重点讲解了代表ISO日历系统的IsoChronology类。内容包括IsoChronology的属性和方法,如获取日历系统ID、创建LocalDate,以及如何判断闰年等。同时,提到了其他日历系统如HijrahChronology、JapaneseChronology等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文所有源码的jdk版本是:jdk-13.0.1

Chronology接口代表日历系统接口,实现这个接口的类表示某一个日历系统。

Chronology接口的官方文档:https://docs.oracle.com/en/java/javase/13/docs/api/java.base/java/time/chrono/Chronology.html

世界上有很多不同的日历系统。其中我们日常使用的公历属于ISO日历系统,这个是世界通用的标准日历系统。除此之外还有非通用的,比如日本历、泰国日历、中华民国日历、伊斯兰历、农历等。

java已经写好了一些类代表一些常用的日历系统:

其中IsoChronology类就是代表ISO日历系统。HijrahChronology是伊斯兰日历系统,JapaneseChronology是日本历,MinguoChronology是民国历,ThaiBuddhistChronology是泰国佛教历。除了ISO日历系统,其他日历系统我们都不怎么用,因此不作介绍。而java的日期依赖的就是ISO日历系统。

1.1  IsoChronology类的属性

这里介绍其中一个静态属性:

    /**
     * Singleton instance of the ISO chronology.
     */
    public static final IsoChronology INSTANCE = new IsoChronology();

这里用了单例设计模式,因为日历系统只需要一个就够了。这个类的构造方法是私有的,所以获取ISO日历系统实例的方法只有:

	public static void main(String[] args) {
		IsoChronology iso=IsoChronology.INSTANCE;
	}

1.2  IsoChronology类的方法

获取IsoChronology类所代表的日历系统的ID和类型

	public static void main(String[] args) {
		IsoChronology iso=IsoChronology.INSTANCE;
		System.out.println(iso.getId());//ISO
		System.out.println(iso.getCalendarType());//iso8601
	}

 用日历系统创建本地LocalDate日期对象,传入时代对象、年、月、日

	public static void main(String[] args) {
		IsoChronology iso=I
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值