首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

JAVA 回调机制之计策模式

2012-09-07 
JAVA 回调机制之策略模式package com.fileimport java.io.Fileimport java.io.IOExceptionpublic class

JAVA 回调机制之策略模式

package com.file;import java.io.File;import java.io.IOException;public class ProcessFiles {/** * 策略模式 * @author Administrator *重点 */public interface Strategy{void process(File file);}private Strategy strategy;private String ext;//扩展名称public ProcessFiles (Strategy strategy , String ext){this.strategy = strategy;this.ext = ext;}public void start (String[] args){try {if(args.length == 0){processDirectoryTree(new File("."));}else{for(String arg : args){File fileArg = new File(arg);if(fileArg.isDirectory()){processDirectoryTree(fileArg);}else{if(!arg.endsWith("." + ext)){arg += "." + ext;}strategy.process(new File(arg).getCanonicalFile());}}}} catch (Exception e) {throw new RuntimeException(e);}}public void processDirectoryTree(File root)throws IOException{for(File file : Directory.walk(root.getAbsoluteFile(),".*\\." + ext)){strategy.process(file.getCanonicalFile());}}public static void main(String[] args) {new ProcessFiles(new ProcessFiles.Strategy() {public void process(File file) {System.out.println(file);}}, "java").start(new String[]{"."});}}
?

热点排行