首页 > 技术文章 > 由名字创建类的方法 实现工厂模式的一种方法

-TheMilkyWay 2020-05-19 22:37 原文

定义类的思路

 

 要求在Factory类中仅根据类名来创建具体类。所以重点在于Factory类的构造

代码实现

 1 interface Product{
 2     public void useIt();
 3 }
 4 class  screwDriver implements Product{
 5     @Override
 6     public void useIt() {
 7         System.out.println("用螺丝刀");
 8     }
 9 }
10 class  nail implements Product{
11     @Override
12     public void useIt() {
13         System.out.println("用钉子");
14     }
15 }
16 class Factory{
17     public Product getProduct(String fFame){
18         Product p=null;
19         try {
20             p=(Product)(Class.forName(fFame).newInstance());
21         }catch (Exception e){}
22         return p;
23     }
24 }
25 
26 public class test {
27     public static void main(String args[]){
28         Factory f=new Factory();
29         Product p=f.getProduct("nail");
30         p.useIt();
31     }
32 }
33 //运行结果:用钉子

 

推荐阅读