LocalDate、LocalTime、LocalDateTime 类是最终类,无法从中创建对象,因此无法对非静态方法 format() 进行静态引用。 此外,提到的所有三个类都仅继承自 Object 类。因此,这三个类没有可以访问此方法的超类。 该方法既不是来自 LocalDate、LocalTime、LocalDateTime 类实现的任何接口,也不能重写该方法,因为所有三个类都是最终类。 请向我解释上述任何类中 format() 的本质。
“... LocalDate、LocalTime、LocalDateTime 类是最终类,无法从中创建对象...”
您的术语不正确。
并且,当使用 final 关键字定义 class 时,它不能被 封装。
不过,可以创建对象。
LocalDate ld = LocalDate.of(2023, 11, 9);
LocalTime lt = LocalTime.of(12, 34);
LocalDateTime ldt = LocalDateTime.of(2023, 11, 9, 12, 34);
“...所以不能对非静态方法format()进行静态引用。...”
format方法未定义为static,因此您需要使用实例来访问它。
LocalTime lt = LocalTime.of(12, 34);
lt.format(DateTimeFormatter.ISO_LOCAL_TIME);