1. package com.home.fdemo1;  
  2. interface Car{  
  3.     public void run();  
  4.       
  5.     public void stop();  
  6. }  
  7. class Banz implements Car  
  8. {  
  9.     @Override 
  10.     public void run() {  
  11.         System.out.println("奔驰  汽车已启动!");         
  12.     }  
  13.  
  14.     @Override 
  15.     public void stop() {  
  16.         System.out.println("奔驰汽车已经停止了!");         
  17.     }  
  18. }  
  19. class Toyota implements Car{  
  20.  
  21.     @Override 
  22.     public void run() {  
  23.         System.out.println("Toyota已经开启了");  
  24.           
  25.     }  
  26.  
  27.     @Override 
  28.     public void stop() {  
  29.         System.out.println("Toyota已经停开了");    
  30.     }  
  31. }  
  32. //简单工厂  
  33. class Factory{  
  34.       
  35.     public static Car getInstances(String typeName)  
  36.     {  
  37.         Car c=null;  
  38.         try {  
  39.             c=(Car)Class.forName("com.home.fdemo1."+typeName).newInstance();  
  40.         } catch (Exception e) {  
  41.             e.printStackTrace();  
  42.         }  
  43.         return c;  
  44.     }  
  45.       
  46. }  
  47.  
  48. public class Demo1 {  
  49.     /**  
  50.      * @param args  
  51.      */ 
  52.     public static void main(String[] args) {  
  53.           
  54.         Car c=Factory.getInstances("Toyota3");  
  55.         if(c!=null)  
  56.         {  
  57.             c.run();  
  58.             c.stop();  
  59.         }else 
  60.         {  
  61.             System.out.println("工厂不具备造这种车!");  
  62.         }  
  63.  
  64.     }  
  65.  
  66. }