问题解决就结贴,怎么样重载File类,错在哪里阿

haiwenlin 2003-10-13 12:25:35
package p1;
import java.io.*;
import java.util.*;
public class File1 extends File
{
//static private FileSystem fs = FileSystem.getFileSystem();
private String path;
public File1(String path)
{
this.path=path;
}
private transient int prefixLength;
int getPrefixLength() {
return prefixLength;
}
public String[] list(FilenameFilter filter) {
String names[] = list();
if ((names == null) || (filter == null)) {
return names;
}
ArrayList v = new ArrayList();
for (int i = 0 ; i < names.length ; i++) {
if (filter.accept(this, names[i])) {
v.add(names[i]);
}
}
return (String[])(v.toArray(new String[0]));
}

}


F:\linhaiwen\j2ee\example>javac File1.java
File1.java:4: cannot resolve symbol
symbol : constructor File ()
location: class java.io.File
public class File1 extends File
^
1 error

...全文
47 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
muymuy 2003-10-13
  • 打赏
  • 举报
回复
编译器在编译你的程序的时候会在你的构造函数中悄悄的加上这样一句代码
super();
你的构造方法就变成这样:
public File1(String path)
{
super();
this.path=path;
}
super()实际上是调用File的缺省构造方法,但是File中却没有这个方法,所以编译的时候就出错了。
修改办法如下:
public File1(String path)
{
super(path);
this.path=path;
}
littlecong 2003-10-13
  • 打赏
  • 举报
回复
File没有不带参数的构造函数
你需要显式的调用super(fileName)之类的函数

62,615

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧