1.回調
下面這個代碼是模仿spring的HibernateTemplae.excute(HibernateCallback callback)的
package callback;

public interface Callee {
public Object doExecute();

}
package callback;

public class Caller {
public static void main(String args[]) {
CallerClass.execute(new Callee() {
public Object doExecute() {
String s = "this is callback runing";
System.out.println(s);
return s;

}

});
CallerClass.execute(new Callee() {
public Object doExecute() {
System.out.println("i am can");
return new Integer(2234234);
}

});

}
public static class CallerClass {
public static void execute(Callee callee) {
System.out.println("call back start");
callee.doExecute();
System.out.println("call back done");
}
}
}
運行結果:
call back start
this is callback runing
call back done
call back start
i am can
call back done
2: 有時候,每個類的實例只在某個地方用到,其它地方不會去調用,我們可以把這個實例放到某個函數內部調用
public static File[] listSubDirectories(String _dir) {
File fDir = new File(_dir);
FileFilter fileFilter = new FileFilter() {
public boolean accept(File file) {
return file.isDirectory();
}
};

File[] files = fDir.listFiles(fileFilter);
return files;
}
下面這個代碼是模仿spring的HibernateTemplae.excute(HibernateCallback callback)的






































運行結果:
call back start
this is callback runing
call back done
call back start
i am can
call back done
2: 有時候,每個類的實例只在某個地方用到,其它地方不會去調用,我們可以把這個實例放到某個函數內部調用











