永发信息网

java工厂问题

答案:4  悬赏:40  手机版
解决时间 2021-08-14 10:04
  • 提问者网友:不要迷恋哥
  • 2021-08-14 06:50

老师留了个作业

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

最佳答案
  • 五星知识达人网友:梦中风几里
  • 2021-08-14 07:18

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

全部回答
  • 1楼网友:舍身薄凉客
  • 2021-08-14 09:15
你好以下是在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();             } } }
  • 2楼网友:几近狂妄
  • 2021-08-14 09:07
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 调用算法     } } 不知道你是不是这意思。。。。。
  • 3楼网友:猎心人
  • 2021-08-14 08:17
抽象的问题自然自能得到抽象的答案!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯