1  import java.io.File;
  2 
  3 public class File{
  4     public static void main(String[] args){
  5         File f=new File("/home/1");
  6         printAllFile(f);
  7         File f1=new File("/home/2");
  8         deleteAll(f1);
  9         }
 10     public static void printAllFile(File f){
 11         System.out.println(f.getName());
 12         if(f.isDirectory()){
 13             File[]f1=f.listFiles();
 14             int len=f1.length;
 15             for(int i=0;i<len;i++){
 16                 printAllFile(f1[i]);
 17                 }
 18             }
 19         }
 20     public static void deleteAll(File f){
 21         if(f.isFile()){
 22             f.delete();
 23             }else{
File f1[]=f.listFiles();
 25                 int len=f1.length;
 26                 for(int i=0;i<len;i++){
 27                     deleteAll(f1[i]);
 28                     }
 29                     f.delete();
 30                 }
 31         }
 32 }"File.java" 32L, 649C     报错
File.java:1: 已在该编译单元中定义 File
import java.io.File;
^
File.java:5: 找不到符号
符号: 构造函数 File(java.lang.String)
位置: 类 File
File f=new File("/home/marico/图片/1");
       ^
File.java:7: 找不到符号
符号: 构造函数 File(java.lang.String)
位置: 类 File
File f1=new File("/home/marico/图片/2");
        ^
File.java:11: 找不到符号
符号: 方法 getName()
位置: 类 File
System.out.println(f.getName());
                    ^
File.java:12: 找不到符号
符号: 方法 isDirectory()
位置: 类 File
if(f.isDirectory()){
    ^
File.java:13: 找不到符号
符号: 方法 listFiles()
位置: 类 File
File[]f1=f.listFiles();
          ^
File.java:21: 找不到符号
符号: 方法 isFile()
位置: 类 File
if(f.isFile()){
    ^
File.java:22: 找不到符号
符号: 方法 delete()
位置: 类 File
f.delete();
 ^
File.java:24: 找不到符号
符号: 方法 listFiles()
位置: 类 File
File f1[]=f.listFiles();
           ^
File.java:29: 找不到符号
符号: 方法 delete()
位置: 类 File
f.delete();
 ^
10 错误

解决方案 »

  1.   

    import java.io.File;
     
    public class File{都是File?编译器估计搞不清你究竟要用哪个File吧!
      

  2.   

    把所有代码中用到java.io.File这个类而写作File的地方都改成java.io.File试试看呢?或者就改类名
      

  3.   

    自己写的类与io包中的File类重名,编译器不知道你要调用哪个类。。换个类名,或者在创建File对象时指定File类所在的包,比如创建io中的File类:java.io.File file = new java.io.File("/test.txt");