Paths.get 与 Path.of

据我所知,Paths.get似乎Path.of做了完全相同的事情,将一个或多个字符串变成一个Path对象;的文档Paths.getPath.of使用相同的措辞。它们实际上是相同的吗?

Path.of后来介绍的。

猜想:是为了Foo.of风格一致而引入的。在这种情况下,从一致性/美观的角度来看,它会被认为是更好的吗?


繁华开满天机
浏览 164回答 1
1回答

杨__羊羊

确实Path.of是后来才介绍的。猜想:是为了Foo.of风格一致而引入的。从邮件列表存档中,这个方法曾经被调用过Path.get:主要变化是 java.nio.file 中的 Path 和 Paths。此补丁将 Paths.get() 方法复制到 Path.get() 中的静态方法,并修改前者以调用后者各自的方法。路径规范稍作清理,不再引用路径或路径本身,例如“(参见路径)”。@implSpec 注释被添加到 Paths 中,以指示这些方法只是调用 Path 中的对应方法。...后来,当Brian Goetz 建议它与以下内容保持一致Foo.of时,这一点被更改:另外,Brian Goetz 在列表外建议,如果这些工厂方法被命名为“of”,将会更加一致,所以我认为 webrev 将被更新以查看其外观。现在回答你的最后一个问题:“在这种情况下,从一致性/美观的角度来看,它会被认为是更好的选择吗?”在最初的邮件中,Brian Burkhalter 表示,他更新了对新方法的所有引用Path:java.base 中的所有源文件都经过修改,将 Paths.get() 更改为 Path.get() 并删除 Paths 的导入。...因此我得出的结论Path.of是 确实比 更可取Paths.get。事实上,如果您查看Java 13 的Javadoc,Paths您会发现以下注释:API 注意:建议Path通过Path.of方法而不是通过get此类中定义的方法来获取 a,因为此类可能在未来版本中被弃用。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java