1)if/else
2) 策略模式
3)map + 函式式介面
判斷條件放在key中對應的業務邏輯放在value中
這樣子寫的好處是非常直觀,能直接看到判斷條件對應的業務邏輯
@service
public class querygranttypeservice
public string getresult(string resourcetype)
return "查詢不到該優惠券的發放方式";
}}
//具體的邏輯操作
@service
public class granttypeserive
public string shopping(string resourceid)
public string qqvip(string resourceid)
}
@restcontroller
public class granttypecontroller
}
策略模式通過介面、實現類、邏輯分派來完成,把 if語句塊的邏輯抽出來寫成乙個類,更好維護。
map+函式式介面通過map.get(key)來代替 if-else的業務分派,能夠避免策略模式帶來的類增多、難以俯視整個業務邏輯的問題。
介面預設方法 介面靜態方法 函式式介面
目錄 介面預設方法 介面靜態方法 函式式介面 package com.tmooc.inte cedefaultandstaticmethod import jdk.internal.instrumentation.logger import lombok.extern.slf4j.slf4j aut...
函式式介面
在oop中方法中的引數傳遞的資料,而函式式介面傳遞的是一種行為。如果乙個介面只有乙個抽象方法,那麼這個介面就是函式式介面 如果在某個介面上宣告了 functionalinte ce 註解,那麼編譯器會按照函式式介面的定義來約束該介面。public class mydemo public static...
函式式介面
jdk提供我們的常用函式式介面 supplier consumner predicate function 02 函式式介面的概念 函式式介面的定義 概念 有且僅有乙個抽象方法的介面 functionalinte ce 告訴編譯器,我當前這個介面是函式式介面 編譯器就會檢測當前介面是不是有且僅有乙個...