似乎在 Java 7 中,Objects
类提供了该语言其他部分已经涵盖的许多功能。
以toString()
为例。以下将产生相同的结果:
Objects.toString(12);
String.valueOf(12);
实际上,Objects.toString
定义为:
public static String toString(Object o) {
return String.valueOf(o);
}
假设我们正在处理实际的类。一个比另一个更受欢迎吗?
Objects.toString(o);
o.toString();
语言设计者在这里告诉我们什么?我们应该开始更喜欢 Objects 的解决方案而不是现有的解决方案吗?像这样的事情的长期理由是什么?
最佳答案
参见 the documentation for said class :
This class consists of
static
utility methods for operating on objects. These utilities includenull
-safe ornull
-tolerant methods for computing the hash code of an object, returning a string for an object, and comparing two objects.
所以这主要是为了让您免受额外的 null
保护。
关于java - Java 7 中对象静态方法的原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11596680/