标题:[求助]FilenameFilter是接口还是类?
只看楼主
mickboy
Rank: 1
等 级:新手上路
帖 子:60
专家分:0
注 册:2007-1-11
 问题点数:0 回复次数:4 
[求助]FilenameFilter是接口还是类?

有点不理解的是FilenameFilter在帮助文档上面是个接口,为什么在这里却可以直接new?
import java.io.*;

public class DirList2{
public static FilenameFilter filter(final String afn){
return new FilenameFilter(){
String fn=afn;
public boolean accept(File dir,String n){
String f=new File(n).getName();
return f.indexOf(fn)!=-1;
}
};
}
public static void main(String[] args){
try{
File path=new File(".");
String[] list;
if(args.length==0)
list=path.list();
else
list=path.list(filter(args[0]));
for(int i=0;i<list.length;i++)
System.out.println(list[i]);
}catch(Exception e){
System.out.println(e.toString());
e.printStackTrace();
}
}
}

搜索更多相关主题的帖子: 接口 
2007-10-16 11:11
Eastsun
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:32
帖 子:802
专家分:0
注 册:2006-12-14
得分:0 
FilenameFilter是接口

new FilenameFilter(){
String fn=afn;
public boolean accept(File dir,String n){
String f=new File(n).getName();
return f.indexOf(fn)!=-1;
}
};
这个东西叫做匿名类.
Thinking in JAVA或Core JAVA上都有比较详细的解释.

My BlogClick Me
2007-10-16 11:50
mickboy
Rank: 1
等 级:新手上路
帖 子:60
专家分:0
注 册:2007-1-11
得分:0 

我知道这是匿名类,但是是接口怎么可能去new呢?这点不是很明白~

2007-10-16 12:03
huwangvs
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:34
帖 子:764
专家分:0
注 册:2007-2-4
得分:0 

匿名类new的是个类,这个类没有名字。实现了FilenameFilter接口。。。

2007-10-16 14:23
mickboy
Rank: 1
等 级:新手上路
帖 子:60
专家分:0
注 册:2007-1-11
得分:0 
哦~明白了,谢谢指点
2007-10-16 20:32



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-178048-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.085183 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved