隨筆-28  評論-15  文章-81  trackbacks-0
           

          package com.tanm.factoryDemo;

          interface Car {

              public void run();

              public void stop();

          }

          class Benz implements Car {

              public void run() {

                 System.out.println("Benz開始啟動了");

              }

              public void stop() {

                 System.out.println("Benz停車了");

              }

          }

          class Toyota implements Car {

              public void run() {

                 System.out.println("Toyota啟動了");

              }

              public void stop() {

                 System.out.println("Toyota停車了");

              }

          }

          class Ford implements Car {

              public void run() {

                 System.out.println("Ford開始啟動了");

              }

              public void stop() {

                 System.out.println("Ford停車了");

              }

          }

          class Factory {

              public static Car getCarInstance(String type) {

                 Car c = null;

                 try {

                     // 利用java的反射機制

                     c = (Car) Class.forName("com.tanm.factoryDemo." + type)

                            .newInstance();

                 } catch (InstantiationException e) {

                     e.printStackTrace();

                 } catch (IllegalAccessException e) {

                     e.printStackTrace();

                 } catch (ClassNotFoundException e) {

                     e.printStackTrace();

                 }

                 return c;

              }

          }

          public class FactoryDemo {

              public static void main(String[] args) {

                 Car c = Factory.getCarInstance("Toyota");

                 if (c != null) {

                     c.run();

                     c.stop();

                 } else {

                     System.out.println("造不了這種汽車");

                 }

              }

          }

          posted on 2007-10-16 17:39 譚明 閱讀(318) 評論(0)  編輯  收藏 所屬分類: Java設計模式

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 荔波县| 韩城市| 新乡市| 广安市| 建德市| 荣成市| 额敏县| 耒阳市| 岳池县| 郓城县| 天气| 神农架林区| 莱西市| 麟游县| 永善县| 桑植县| 望江县| 永定县| 宜兰市| 惠东县| 林口县| 班玛县| 连平县| 杭锦后旗| 军事| 六枝特区| 垦利县| 玉溪市| 淮北市| 大邑县| 安徽省| 南澳县| 无锡市| 峡江县| 沈阳市| 新化县| 湛江市| 上思县| 祁阳县| 大荔县| 九龙坡区|