getAbsolutePath 这个方法返回值是String 是获取当前文件所的绝对路径
getAbsoluteFile 这个方法返回值是File 是获取文件的绝对路径表达方式,也就是先获取绝对路径 再使用文件的绝对路径重新创建了一个对象。下面是其源码:
- /**
- * Returns the absolute form of this abstract pathname. Equivalent to
- * <code>new File(this.{@link #getAbsolutePath})</code>.
- *
- * @return The absolute abstract pathname denoting the same file or
- * directory as this abstract pathname
- *
- * @throws SecurityException
- * If a required system property value cannot be accessed.
- *
- * @since 1.2
- */
- public File getAbsoluteFile() {
- String absPath = getAbsolutePath();
- return new File(absPath, fs.prefixLength(absPath));
- }
复制代码
下面是一段简单的演示代码:
- public class Test{
- public static void main(String[] args) throws Exception {
- File file = new File("test.text");
- System.out.println(file.getPath());
- System.out.println(file.getAbsoluteFile().getPath());
- System.out.println(file.getAbsolutePath());
- }
- }
复制代码
其实从两个方法的描述及源码中都可以看出这两个方法的区别。如果有不明白的地方可以再问我。 |