| 发表于:2007-10-14 10:50:42 楼主 |
或许你会觉得过滤文件夹还要手动编写一个类,实在是太麻烦了。实则不然。 给listfiles()参数提供一个实现filenamefilter接口的类的实例,惟一目的就是让listfiles()反过来调用作为参数的实例的accept方法。仔细体会一下这句绕口令,真是意味深长啊。这意味着你可以把任何实现filenamefilter接口的类的实例当作参数传递,甚至是在运行时动态改变,从而使得程序更加灵活。而且,如果你要加入更多的过滤器,写额外的类就可以了,完全不需要修改原先的过滤器,这种动态策略的思想就是一种strategy模式的体现 |
|
|
|
|