阅读文档后String java.lang.Enum.name()我不确定我何时使用name()以及何时使用toString().
返回此枚举常量的名称,与其枚举声明中声明的完全相同.大多数程序员应优先使用toString方法,因为toString方法可能会返回一个更加用户友好的名称.此方法主要用于特殊情况,其中正确性取决于获取确切名称,该名称在不同版本之间不会有所不同.
特别是,即使文档说更喜欢toString(),Java自己的StandardLocation枚举name也会在我认为文档建议不同时使用.
public String getName() { return name(); }
Run Code Online (Sandbox Code Playgroud)
另外Enum实现toString()为,
public String toString() {
return name;
}
Run Code Online (Sandbox Code Playgroud)
我无法想到用户定义的枚举会覆盖的toString()情况name(),toString()并且几乎总是完全相同.
name()是一个坏主意?java.lang.Enum.toString()会这样?