java中,打印File类的问题?

publicstaticvoidmain(String[]args)throwsException{//【递归列出】所有目录Filef3=newFile("e:"+Fil... public static void main(String[] args) throws Exception {
//【递归列出】所有目录
File f3= new File("e:"+File.separator+"cs");
print(f3);
}

public static void print(File file3) {
if(file3.isDirectory()) {
File [] f4=file3.listFiles();
//这里是防止一些锁住的文件夹,打不开,就是列不出的目录。
if(f4!=null) {
for(int k=0;k<f4.length;k++) {
print(f4[k]);
}
}
}
System.out.println(file3);
}
我就是不太明白。最后一句:System.out.println(file3);为什么打印这个文件,能把所有的路径都打印出来。
展开
 我来答
来自东台山简单的锦鲤
2020-03-28 · 超过30用户采纳过TA的回答
知道答主
回答量:105
采纳率:61%
帮助的人:7.3万
展开全部
System.out.println输出对象时,实际会调用的是对象的toString()方法,然后输出toString()方法返回的字符串。
而File类的toString()方法返回的就是其实例的路径,所以你看到的输出结果是路径。

System.out.println(file);
// 等价于System.out.println(file.toString());
// File类的toString()方法源码

public String toString() { return getPath();}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式