本帖最后由 bx276626237 于 2013-12-03 16:46:30 编辑

解决方案 »

  1.   

    请好好学习下spring或工厂模式,填写killer
      

  2.   

    写少了,填写killer的实体类,也就是继承killer接口的类,填写killer1或者killer2,,,
      

  3.   

    我知道是写killer1或者killer2    只是想问怎么写,因为直接填killer1或者killer2都会报错,所以我想问是不是应该填写killer1或者killer2的路径,但是,路径具体应该如何填写,我尝试了,但是都不对,所以才会来问的。
      

  4.   

    如果直接填“Killer1”,则报错:
    Exception in thread "main" java.io.FileNotFoundException: Killer1 (系统找不到指定的文件。)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(Unknown Source)
    at java.io.FileInputStream.<init>(Unknown Source)
    at pepper.com.KillerFactory.getKiller(KillerFactory.java:14)
    at pepper.com.MainActivity.main(MainActivity.java:6)
      

  5.   

    额  你的getKiller(String path)  换个参数啊   比如“killer1” “killer2” 或者定义成int类型也可以啊 int KILLER_1 = 1;
      

  6.   

    简单工厂可以这么修改:
    public class KillerFactory {
        public static Killer getKiller(int i) {
        if (i == 1)
            return new Killer1();
        else (i == 2)
            return new Killer1();
        }
    }
    这仅仅是将对象的创建于对象本身进行分离。========================================================
    如果使用工厂模式,应该由不同的工厂创建不同的杀手,例如
    public abstatc class KillerFactory {
        public abstatc Killer getKiller();
    }public class KillerFactory1 extends KillerFactory {
        public Killer getKiller() {
            return new Killer1();
        }
    }public class KillerFactory2 extends KillerFactory {
        public Killer getKiller() {
            return new Killer2();
        }
    }
      

  7.   

    要不就按楼上的修改代码,要不你就理解清楚Properties 是个啥,感觉像是读外部文件获取数据转换为KILLER子类