| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 789 人关注过本帖
标题:工厂方法 ?
只看楼主 加入收藏
h17891789
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2006-12-18
收藏
 问题点数:0 回复次数:9 
工厂方法 ?
老师给布置的作业是:


1:自己设计一个花园类,以实现工厂方法(生产花的实例,设置花的颜色等)。

于是我上网查了下什么叫工厂方法 但是看了之后 搞的云里雾里的
所以想向各位 那里得出 专业的 解释? 谢谢!

搜索更多相关主题的帖子: 工厂 
2007-04-05 21:09
风月_无边
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:60
帖 子:2960
专家分:652
注 册:2007-1-19
收藏
得分:0 
设计模式?!

我的网站 http://www.
2007-04-05 22:17
lgdcky
Rank: 2
等 级:论坛游民
威 望:5
帖 子:576
专家分:18
注 册:2006-8-5
收藏
得分:0 

打个比方有一个类A,他有2个子类B和C,然后写一个工厂类
public class Factory{

  public static A creator(int which){

  //getClass 产生A一般可使用动态类装载装入类。
  if (which==1)
    return new B();
  else if (which==2)
    return new C();

  }

}
然后调用的时候用 A b = Factory.creator(1);来调用,这是个简单的工厂模式,这是为了加强类的封装性!不知道说得个清楚啊?

[此贴子已经被作者于2007-4-6 1:13:29编辑过]


2007-04-06 01:04
支离破碎
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:737
专家分:0
注 册:2007-1-4
收藏
得分:0 
楼上的差不多就是这个意思了,工厂就是专门生产东西的,你不用知道他是怎么生产的,比如你想要红色的花,黄色的花你只告诉你的工厂我要这种类型的,不用管他是怎么做的,他会给你做出来。

人生漂泊無依,有如浮萍菱花,隨水飄流,你会在我这里停留吗?
[url=http://51mynet.]http://51mynet.[/url]
2007-04-06 09:25
h17891789
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2006-12-18
收藏
得分:0 

麻烦说详细一点啊 我还是不怎么明白呢 谢谢!

2007-04-07 20:48
风月_无边
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:60
帖 子:2960
专家分:652
注 册:2007-1-19
收藏
得分:0 
其实没必要搞清楚,用不到

我的网站 http://www.
2007-04-07 23:04
angeloc
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:36
帖 子:1353
专家分:0
注 册:2006-11-21
收藏
得分:0 
以下是引用风月_无边在2007-4-7 23:04:18的发言:
其实没必要搞清楚,用不到

错,工厂模式是最常用的设计模式之一!


老牛明知夕阳晚,不用扬鞭自奋蹄; Angelo\'s BLOG
2007-04-07 23:25
风月_无边
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:60
帖 子:2960
专家分:652
注 册:2007-1-19
收藏
得分:0 
哦,是吗,确实没有好好的研究过 !!

我的网站 http://www.
2007-04-07 23:27
huwangvs
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:34
帖 子:764
专家分:0
注 册:2007-2-4
收藏
得分:0 
以下是引用lgdcky在2007-4-6 1:04:56的发言:

打个比方有一个类A,他有2个子类B和C,然后写一个工厂类
public class Factory{

  public static A creator(int which){

  //getClass 产生A一般可使用动态类装载装入类。
  if (which==1)
    return new B();
  else if (which==2)
    return new C();

  }

}
然后调用的时候用 A b = Factory.creator(1);来调用,这是个简单的工厂模式,这是为了加强类的封装性!不知道说得个清楚啊?


我理解是,在工厂类里,有一个返回类类型的方法(这里是类A),如果满足方法里的某一条件就返回其所对应的那个类???
像楼主说的花类,是不是可以说 A是一 个花类,B是玫瑰花类,C是牡丹花类,然后调用方法,满足玫瑰花类就返回B,满足牡丹花类就返回C..
是这个意思吧?

2007-04-08 12:26
sea7
Rank: 2
等 级:新手上路
威 望:3
帖 子:291
专家分:0
注 册:2007-2-17
收藏
得分:0 

软件是一种修养
2007-04-08 22:33
快速回复:工厂方法 ?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012730 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved