[Java] 内部类的用法

package test.file;

import java.io.File;
import java.io.FilenameFilter;

/**
 * 内部类的使用
 * @author Frost.Yen
 * @E-mail 871979853@qq.com
 * @date 2016年4月13日
 */
public class TestFile03 {
    public static void main(String[] args) {
        new TestFile03().run();
    }
    private void run(){
        File f = new File("E:\\JAVA\\Examples\\To Learn\\src\\test\\file");
        System.out.println(f.exists());
        System.out.println(f.isFile());

        System.out.println(f.isDirectory());
        //String[] fns = f.list();//不过滤文件
        String[] fns = f.list(new JavaFileFilter());//过滤文件
        for(String fn:fns){
            System.out.println(fn);
        }
        System.out.println("---------------------------------");
    }
    /**
     * 写一个类实现FilenameFilter专门用来过滤文件
     * (如果这个类仅仅只是在某个类的内部访问,可以直接将该类写在类的内部
     *    这个类在外部无法访问,这种类叫内部类,内部类要在static之后才能声明,所以不能在
     *    static的方法中使用)
     *
     */
    class JavaFileFilter implements FilenameFilter{
        @Override
        public boolean accept(File dir, String name) {
            //过滤的结果是显示返回true的值
            if(name.endsWith(".java")) return true;
            else return false;
        }
    }
}

 

posted on 2016-04-13 11:22  晏过留痕  阅读(268)  评论(0编辑  收藏  举报