單一職責原則的英文為Single Responsibility Principle(SRP),可理解為沒有多於一個原因使類改變,也就是一個類只能有一個導致變化的原因。這個原則要求一個接口/類/方法的職責單一。
優點:
- 職責單一,類的複雜的降低,
- 可讀性提高,代碼少了,讀起來簡單了
- 可維護性提高,變更引起的風險降低
缺點:
- 職責分的太細導致類的總數膨脹,系統複雜的增加
Java的設計中很多接口就是單一職責的,比如接口Callable,Runnable,Closeable等都是單一職責。
我們在設計接口和方法的時候一定做到單一職責,類的設計儘量做到只有一個原因一起變化。
閱讀更多 Java猿 的文章