java抽象的具體實戰應用案例,20K的能寫出來嗎?

java、程序員、後端開發、面試中的程序員

目標

  • 學習抽象思想
  • 逆向思維
  • 提高業務代碼的擴展性
  • 學習拆分思想,降低業務代碼複雜度

案例前思考

  • 下面具體業務邏輯都省略了
  • 參數都是Object類型,實戰項目中都是具體業務pojo類
  • 實戰項目裡抽象類還可以實現 通用的接口
  • 下面是一個統計業務數據的邏輯代碼,因為業務數據類型比較複雜可能會導致3種以上的業務統計方式,如果都寫在一個類中,維護代碼的人可能會非常痛苦
  • 將來要增加第4種新業務統計方式影響面比較大

抽象類

  • 把模板邏輯都在此類實現
  • 把抽象方法定義好,留子類實現的
java抽象的具體實戰應用案例,20K的能寫出來嗎?

留給子類擴展的

java抽象的具體實戰應用案例,20K的能寫出來嗎?

合併數據

java抽象的具體實戰應用案例,20K的能寫出來嗎?

子類A

java抽象的具體實戰應用案例,20K的能寫出來嗎?

子類B

java抽象的具體實戰應用案例,20K的能寫出來嗎?

子類C

java抽象的具體實戰應用案例,20K的能寫出來嗎?

  • 後續要增加第4種業務統計邏輯,只要繼承並實現統計方法即可,擴展性維護性都不錯。

總結

  • 把固定模板邏輯和需要子類擴展的邏輯,合理拆分出來
  • 複雜類型的參數儘量都用pojo類,不要用String,這樣方便理解維護

我的其他總結文章



分享到:


相關文章: