首先楼主反了命名方面的错误,因为IO包里面已经有了名为File包的类;楼主又定义了File类,这是系统认为new的对象是自己定义的类了。而自己定义的类是调用默认构造函数的。没有参数。new了一个带参数的构造函数肯定是错的了。
其次像这种 有main函数所在的类在本类的其他方法最好不要在new一个自己的对象,如
class MFile
{
public static void main(String[] args) throws IOException
{
MFile.method();
}
public static void method()throws IOException
{
MFile a = new MFile();
a.main(args)
System.out.println("ddfsf");
}
}
因为这的话这个对象也可以有main()方法容易引错误。当然是什么错误我也不知道。因为我没有试过。 所以楼主把自己的类名改一下 在 method方法中 File a = new File("aaaab.txt"); 不变就可以创建一个File对象了。但这是系统之创建了一个虚拟的File文件即该file文件还没在硬盘中新建aaaab.txt文件。通过a.createNewFile();方法可实现在硬盘中新建aaaab.txt文件。作者: 张奇云 时间: 2011-10-17 19:13
这是你自己定义的File类,所以你要自己要提供这个类的构造方法。但是看你的代码是想用java.io包里的File类的构造方法,要么你换个类名。或者把 File a = new File("aaaab.txt"); 改成java.io.File a = new java.io.File("aaaab.txt");