你应该在File FiletoCheck前加上static,错误提示是告诉你FiletoCheck不是一个静态变量,所以不能在测试函数中直接引用

解决方案 »

  1.   

    fileToCheck是成员变量,成员变量在使用时必须通过事例话对象.取,见解使用,在静态成员方法里面不能直接是用成员变量。
      

  2.   

    把File fileToCheck;方到main里在这里感觉还好一点
      

  3.   

    但是当我在File FiletoCheck前面加了static的时候又出现如下的错误:
    "fileinfo.java": Error #: 308 : non-static method info(java.io.File) cannot be referenced from a static context at line 9, column 19
      

  4.   

    当我把File fileToCheck放到main里面来的时候又出现如下的错误:
    "fileinfo.java": Error #: 308 : non-static method info(java.io.File) cannot be referenced from a static context at line 10, column 19
      

  5.   

    楼上说的对,在静态方法中不能直接使用非静态变量,不过你可以在声明一个类来
    专门实现你的文件处理,使用静态或非静态都可以。还可以使用System.in.read()来直接输入文件名.
      

  6.   

    不过我真的没看懂你那个info()是怎么来的。
      

  7.   

    那个info()是另外一个函数,我开始没有设置为static的!所以当我把File fileToCheck放到main里面来的时候就出现:
    "fileinfo.java": Error #: 308 : non-static method info(java.io.File) cannot be referenced from a static context at line 10, column 19
    这样的错误,当我把info()设置为static的时候,一切就好了!
    非常感谢各位!
    还要请教一个问题,在jbuider6里面怎么样给这个main函数args[]数据呢?
      

  8.   

    在File FiletoCheck前加上static
      

  9.   

    你可以在那个测试函数中加入下边一句:String test[] = {"this is a test program"}; 其中this is a test program是你想测试的数据,然后将args.length改成test.length就可以了。
      

  10.   

    File fileToCheck;----->static File fileToCheck;
      

  11.   

    hahaha,先大笑三声。前面的人都说了。我就不说了。