为了对即将到来的JDK 7新类java.util.Objects做准备,来自Sun的Joe Darcy向OpenJDK core-libs-dev团队咨询该类中应该包含哪些方法。借此机会,InfoQ向广大的Java社区征求意见。
在最初的提案中,Darcy谈到了该类中需要包含的几个方法:
一个空安全(null-safe)的equals(arg1, arg2)方法,如果两个参数都为null返回true,如果只有一个为null返回false,其他情况则调用arg1.equals(arg2)
一套针对所有原生类型(int、long等)的compareTo(arg1, arg2)方法
Andrew John Hughes也给出了自己的一些看法:
toString(arg),通过反射将对象中的所有属性都写到返回的输出字符串中
对clone()方法的一个辅助实现
Martin Buchholz还提出一个空安全的hashCode()实现,对于值为null的对象该方法返回0。
Stephen Colebourne专门为该类创建了一个长长的推荐方法列表,这些方法大多都是从Apache Commons Lang程序库中摘取出来的。比如:
min(comparable1, comparable2)与max(comparable1, comparable2),这两个方法都是空安全的方法,返回最小/最大的非空对象(如果两个参数都为null则返回null)
defaultNull(obj, defaultValue),如果obj为null则返回defaultValue对象
您有什么高见呢?java.util.Objects中应该包含哪些方法呢?
查看英文原文:JDK 7: What Frequently Rewritten Methods Should be Included in java.util.Objects?
分享到:
相关推荐
Java Development Kit (JDK) 1.8.0_92是Oracle公司发布的Java编程语言的一个重要版本,它包含了开发和运行Java应用程序所需的所有工具和Java运行时环境。这个特定的版本,1.8.0_92,是Java 8系列的一个更新,主要...
例如,`java.util.Comparator`接口中就包含了一些默认方法。 6、**新时间日期API**: JDK1.8引入了`java.time`包,用以替代旧的`java.util.Date`和`java.util.Calendar`。新的API包括`LocalDate`, `LocalTime`, `...
**JDK1.8 中文API** 是Java开发者的重要参考资料,它包含了JDK1.8版本的所有类、接口和方法的中文解释,便于中国开发者理解和使用。这份文档是基于原始的英文API文档进行翻译,结合了百度和谷歌的翻译技术,以提供更...
Java JDK API 1.8是Java开发中的核心参考资料,它包含了Java编程语言的所有类库、接口和方法,为开发者提供了全面的文档支持。这个CHM(Compiled Help Manual)文件是Windows平台下的帮助文档格式,能够方便程序员...
`java.util`包中的`Objects`类提供了诸如`Objects.equals()`、`Objects.hashCode()`等实用方法,简化了代码编写。 最后,JDK7对JVM也进行了一些优化,比如改进了垃圾收集器,提升了性能,以及支持G1垃圾回收器,以...
JDK包含了Java运行时环境(JRE)、Java编译器(javac)、Java调试器(jdb)以及其他必要的开发工具,如jar工具、appletviewer等,使得开发者能够编写、测试和部署Java应用程序。 JDK 1.8是Java语言的一个重要里程碑...
Java 8允许接口中定义私有方法和静态方法,增强了接口的功能,使其可以包含默认方法之外的辅助逻辑。 总结: JDK 1.8 API的中文翻译版,让开发者能够更好地理解和利用Java 8的新特性,提升开发效率。Lambda表达式、...
Java 8 API中文版是为Java开发者提供的重要参考资料,它包含了Java Development Kit (JDK) 8中的所有类、接口和方法的详细说明。这个帮助文档以CHM(Compiled HTML Help)格式呈现,通常在Windows操作系统环境下使用...
Java API 1.8中文手册是Java开发人员的重要参考资料,它包含了Java开发工具包(JDK)1.8版本的所有类、接口、方法和常量的详细文档。这份手册不仅帮助开发者理解各种类库的功能,还能指导他们如何有效利用这些功能...
5. **Date和Time API的增强**:Java 8对日期和时间的处理进行了重大改进,提供了新的java.time包,包括LocalDate、LocalTime、LocalDateTime等类,替代了过时的java.util.Date和Calendar。 6. **Optional类**:...
在Java编程中,辅助工具类是非常重要的一部分,它们提供了一系列常用的方法,帮助开发者高效地处理各种常见任务。这里我们主要探讨的是"java 常用辅助工具类",包括字符串操作、数字操作、数据库交互以及日期时间...
3. **Java类库**:包括核心库如`java.lang`、`java.util`等,提供了大量预定义的类和方法,方便开发。 4. **开发者工具**:如`javadoc`用于生成API文档,`jps`用于查看运行的Java进程,`jconsole`用于监控JVM性能,...
JDK 14是Java平台标准版(Java SE)的重要版本,它包含了对Java语言、类库以及虚拟机的一系列增强和新特性。API(应用程序接口)开发文档是开发者理解和使用JDK 14的关键资源,它详细阐述了各种类、接口、方法和异常...
- **环境变量设置**:安装完成后,需要在系统环境变量中设置`JAVA_HOME`,指向JDK的安装路径,同时更新`Path`变量,包含`%JAVA_HOME%\bin`,这样可以在命令行中直接运行Java相关命令。 - **验证安装**:通过在...
JDK(Java Development Kit)是Java开发的核心工具集,包含了编译器、JVM(Java虚拟机)以及丰富的API库。这里提到的"学习Java基础必备的jdk8.0 API中文文档"是一个极其重要的资源,对于Java程序员来说犹如一本随时...
JDK 8是Java语言历史上非常重要的一版,引入了许多新特性,包括Lambda表达式、方法引用、Stream API、默认方法、日期与时间API(java.time包)以及新的Optional类等。这些特性极大地提高了Java代码的简洁性和可读性...
JDK 1.8中包含Nashorn JavaScript引擎,它允许Java代码直接执行JavaScript代码,实现了Java与JavaScript的互操作性。 **核心组件解析** - **com**: 包含Java标准库的类,如集合框架、网络编程、I/O操作等。 - **...
JDK Java Language Java Language Tools & Tool APIs java javac javadoc apt jar javap JPDA jconsole Security Int'l RMI IDL Deploy Monitoring Troubleshoot Scripting JVM TI JRE Deployment ...
6. **Date和Time API改进**:JDK 1.8彻底重写了日期和时间API,提供了`java.time`包,包含`LocalDate`、`LocalTime`、`LocalDateTime`等类,比旧的`java.util.Date`和`Calendar`更易用且功能更强大。 7. ** Nashorn...
JDK 1.5的泛型實現(Generics in JDK 1.5) 1 侯捷觀點 JDK 1.5的泛型實現 — Generics in JDK 1.5 — 北京《程序員》 2004/09 台北《Run!PC》2004/09 作者簡介:侯捷,資訊教育、專欄執筆、大學教師...