永发信息网

java工厂问题

答案:4  悬赏:40  手机版
解决时间 2021-08-14 10:04

老师留了个作业

用工厂模式来实现算法(穷举,迭代,递归) 需要客户输入参数 然后自动调用 需要的算法 谁能帮写一下让我学习学习  高分悬赏 谢谢

最佳答案

同学你给的问题太抽象了,需要解决什么问题都没说清楚,别人怎么帮你呢?

全部回答
你好以下是在DOS窗口下以下的你需要的代码,已经试验过了,达到你的需求,望采纳: interface JiSuan{     public void suanFa(); }class QiongJu implements JiSuan{ public void suanFa(){ System.out.println("穷举"); }}class DieDai implements JiSuan{ public void suanFa(){ System.out.println("迭代"); }}class DiGui implements JiSuan{ public void suanFa(){ System.out.println("递归"); }}class Factory{ public static JiSuan getInstance(String className){ JiSuan j = null; if("穷举".equals(className)){ j = new QiongJu(); } if("迭代".equals(className)){ j = new DieDai(); } if("递归".equals(className)){ j = new DiGui(); } return j; }}public class SuanFa { public static void main(String[] args) { // TODO Auto-generated method stub             JiSuan jisuan = Factory.getInstance(args[0]);             if(jisuan != null){             jisuan.suanFa();             } } }
package Arithmetic; public interface Arithmetic {          public void execute() ; } package Arithmetic; public class Iterative implements Arithmetic {     public void execute() {     System.out.println("迭代");//迭代算法代码 自己搞定咯     } } package Arithmetic; public class Recursion implements Arithmetic {     public void execute() {         System.out.println("递归");//递归算法代码 自己搞定咯     } } package Arithmetic; public class Qiongju implements Arithmetic {     public void execute() {         System.out.println("穷举");//穷举算法代码 自己搞定咯     } } package Arithmetic; public class Factory {     public static Arithmetic getArithmetic(String str){                 Arithmetic arithmetic = null ;         if(str.equals("迭代")){             arithmetic = new Iterative() ;         }else if(str.equals("递归")){             arithmetic = new Recursion() ;         }else if(str.equals("穷举")){             arithmetic = new Qiongju() ;         }         return arithmetic ;     } } package Arithmetic; import java.util.Scanner; public class Index {     public static void main(String []args){         Scanner scanner = new Scanner(System.in) ; //接收键盘输入         String str = scanner.nextLine() ;//取出键盘输入的信息         Factory.getArithmetic(str).execute() ; //根据输入参数str 调用算法     } } 不知道你是不是这意思。。。。。
抽象的问题自然自能得到抽象的答案!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
关于武汉军械士官学校
长了痘痘留下的痘坑痘印,怎样才能不留疤痕才
我家的炫舞为什么下不下来,就差最后一步就安
爱情是什么意思,我爱我的偏执狂是什么意思
谁帮我起一个CF好看一点的名字。?
打算在自己的墓碑上写点什么?
荆州区荆州自然美spa馆天桥店我想知道这个在
形容开门声音的词
三星B7300C如何减少流浪花费,我上网花费超高
新店开业促销活动方案,面馆开业什么优惠活动
谁能帮我推荐个好看的小说的..比如(流浪的犹
He said,______(指着)to the mountain ,It is
如果你和爱人往往为一些小事而吵架你会不会讨
开150M现在怎么开
风寒束肺什么意思
推荐资讯
让胡路区大庆江丽小笼包地址在哪,我要去那里
oppo 209+用电脑下载了视频怎么看?
我的皮肤、怎么办?
掩耳盗铃的原文与翻译!
中艺装饰设计工程有限公司征集广告语,请大家
天下贰充值点卡怎样领取
玩DNF会上瘾吗?
新疆教育学院的体育部在哪
请问依照现在的科技,在80年间能制造出超智能
怎样理解图像的排列规律里的这句话?
AMD的处理器相差怎么大啊?
平舆县驻马店五星钻豹电动车在什么地方啊,我
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?