工廠模式
追MM少不了請吃飯了,麥當勞的雞翅和肯德基的雞翅都是MM愛吃的東西,
雖然口味有所不同,但不管你帶MM去麥當勞或肯德基,
只管向服務(wù)員說“來四個雞翅”就行了。麥當勞和肯德基就是生產(chǎn)雞翅的Factory.
工廠模式:客戶類和工廠類分開。消費者任何時候需要某種產(chǎn)品,只需向工廠請求即可。
消費者無須修改就可以接納新產(chǎn)品。缺點是當產(chǎn)品修改時,工廠類也要做相應(yīng)的修改。如:如何創(chuàng)建及如何向客戶端提供。
1
interface 雞翅 {
2
3
public void 加工();
4
}
5
6
class 肯德基 implements 雞翅 {
7
8
public void 加工() {
9
System.out.println("肯德基的店小二說:給你一份肯德基雞翅");
10
}
11
}
12
13
class 麥當勞 implements 雞翅 {
14
15
public void 加工() {
16
System.out.println("麥當勞的店小二說:給你一份麥當勞雞翅");
17
}
18
}
19
20
public class 肯德基或麥當勞 {
21
22
public static 雞翅 來份雞翅(String 我們在哪里) {
23
if (我們在哪里.equals("我們站在肯德基店")) {
24
System.out.println(我們在哪里 + "說:來份雞翅");
25
return new 肯德基();
26
}
27
if (我們在哪里.equals("我們站在麥當勞店")) {
28
System.out.println(我們在哪里 + "說:來份雞翅");
29
return new 麥當勞();
30
}
31
return null;//說錯話就什么也不給吃 :)
32
}
33
34
public static void main(String[] arg)//試試好用不
35
{
36
//思考一下我們現(xiàn)在站在哪里
37
雞翅 一份雞翅 = 肯德基或麥當勞.來份雞翅("我們站在肯德基店");
38
一份雞翅.加工();
39
}
40
}
41

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

posted on 2009-02-22 22:44 Enzosoft 閱讀(163) 評論(0) 編輯 收藏 所屬分類: Java