天天氣非常好,下著淅淅瀝瀝的小雨,刮著風,感覺甚好;我在北京向各位問好。這幾天公司基本沒什么事兒,從昨天開始就復(fù)習了一下多線程編程,今天給各位分享一種Java23種設(shè)計模式中最常見的設(shè)計模式--策略模式。為什么將策略模式和多線程綁在一起呢,不知道各位有沒有注意過我們在進行多線程編程的時候,創(chuàng)建線程的方式有2種,一種是繼承Thread類,另外一種就是實現(xiàn)Runnable接口;當然,我們會毫不保留的選擇第二種,因為擴展性強,習慣接口開發(fā)等等原因,但是第二種方式還潛藏了23種Java設(shè)計模式中的其中一個模式,那就是低調(diào)而又強勢的"策略模式"。
說說策略模式吧,這種模式的設(shè)計思想就是:為了考慮業(yè)務(wù)邏輯的千變?nèi)f化和復(fù)雜程度是不一定的,因此我們需要對這套程序進行高度的抽象,這樣才能將業(yè)務(wù)邏輯和抽象進行相分離,才能夠讓這套程序的可擴展性變的極強,這也是在開發(fā)中會使用策略模式的強大之處。好了讀到這兒,我相信從來沒有接觸過這種設(shè)計模式的讀者來說,還是一頭霧水,接下來我就開始通過多線程來請出我們的"策略模式"。
先看代碼再解釋:
1 public static void main(String[] args) { 2 //創(chuàng)建線程一: 3 new Thread(new Runnable() { 4 @Override 5 public void run() { 6 int i=100; 7 &nbs