简单工厂Factory


本文摘自PHP中文网,作者巴扎黑,侵删。

1

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

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

package net.util;

/**

 * @项目名:spring2.5

 * @包名:net.util

 * @文件名:FactoryDemo.java

 * @日期:Jun 21, 2011 4:37:02 PM

 * @备注:工厂模式

 * @作者:apple

 */

public class FactoryDemo {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

Car c=Factory.getCarInstance("Banz");

if(c!=null){

c.run();

c.stop();

}

else{

System.out.println("制造不了");

}

}

}

class Factory{

public static Car getCarInstance(String type){

Car c=null;

try {

c=(Car)Class.forName("net.util."+type).newInstance();

} catch (InstantiationException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IllegalAccessException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

return c;

}

}

interface  Car{

public void run();

public void stop();

}

class Banz implements Car{

public void run() {

// TODO Auto-generated method stub

System.out.println("Banz跑");

}

public void stop() {

// TODO Auto-generated method stub

System.out.println("Banz停");

}

}

class Ford implements Car{

public void run() {

// TODO Auto-generated method stub

System.out.println("Ford跑");

}

public void stop() {

// TODO Auto-generated method stub

System.out.println("Ford停");

}

}

相关阅读 >>

简单工厂factory

c++万能头文件是什么?

小白程序员c++入门学习书籍(书单)

c++中string类的常用方法有哪些

c/c++中如何使用extern关键字

c 语言结构体详解

c++运算符中不能重载的是哪些

c++是什么意思

第二章c++:变量和基本类型

c++输出二维字符矩阵对齐

更多相关阅读请进入《c》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...