gpt4 book ai didi

java - 为什么 Java 中的 Locale 是最终的?

转载 作者:行者123 更新时间:2023-12-02 10:41:32 26 4
gpt4 key购买 nike

类(class)java.util.Locale被声明为 final,这意味着没有任何东西可以扩展它。

ICU4J project已经编写了此类的扩展 - com.ibm.icu.util.ULocale (这也是final),但正因为如此,它不能继承或轻易地用来代替Locale

这是什么原因?

最佳答案

扩展语言环境并不是在不修改底层系统的情况下就能轻松完成的事情,因为语言环境与这些系统的深度集成。

如果您可以扩展Locale来添加一些额外的属性,那么当前接受Locale的类都不知道如何处理他们。

假设您的 JDK 仅支持 Locale,并且您可以传入具有更深入支持的 ULocale (例如指定要使用的日历和数字而不是底层区域设置的默认值),那么您就不能指望接受传统 JDK Locale 的代码支持这些功能。

关于java - 为什么 Java 中的 Locale 是最终的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52894700/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com