1.回調(diào)
下面這個代碼是模仿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");
        }

    }

}


運行結(jié)果:
call back start
this is callback runing
call back done
call back start
i am can
call back done


2: 有時候,每個類的實例只在某個地方用到,其它地方不會去調(diào)用,我們可以把這個實例放到某個函數(shù)內(nèi)部調(diào)用
 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;
    }