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
抽象的问题自然自能得到抽象的答案!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯