直接看代碼不廢話。不懂Lamada直接百度。。。
package test; /** * QQ:1448376744 * @author 花間島 * */ //控制器 public class Control { //服務器 public static void main(String[] args) throws Exception { boolean result = Handle.process(()->new Control().login("admin", "1024")); System.out.println(result); } //Action public boolean login(String username,String password) { if("admin".equals(username)&&"1024".equals(password)) return true; return false; } } //委托接口 interface Action<TResult>{ public TResult inwork(); } //通用處理器:AOP class Handle{ public static <T> T process(Action<T> action) { T value=null; try { //1:系統及業務邏輯 value = action.inwork();//2:主業務邏輯 //3:系統及業務邏輯 } catch(Exception e){ //1:異常處理業務邏輯 //2:日志記錄 } return value; } }