qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          Java簡單工廠模式

            簡單工廠模式 SimpleFactory,適用于業務相對較簡單地情況,少扯閑話,先上code:

            ~~ ICar.java ~~  抽象產品角色接口

          /**
           * @author VerpHen
           * @date 2013年9月10日  上午9:36:19
           */

          package org.verphen.simpleFactory;

          /*抽象產品角色接口:汽車Car*/
          public interface ICar {

           /* 汽車啟動 */
           public void run();

           /* 汽車停止 */
           public void stop();
          }

            ~~ Benz.java ~~ 具體產品角色類

          /**
           * @author VerpHen
           * @date 2013年9月10日  上午9:38:08
           */

          package org.verphen.simpleFactory;

          /*具體產品角色類:汽車-奔馳Benz*/
          public class Benz implements ICar {

           @Override
           public void run() {
            System.out.println("奔馳啟動");
           }

           @Override
           public void stop() {
            System.out.println("奔馳停止");
           }
          }




           ~~ Ferrari.java ~~ 具體產品角色類

          /**
           * @author VerpHen
           * @date 2013年9月10日  上午9:40:18
           */

          package org.verphen.simpleFactory;

          /*具體產品角色類:汽車-法拉利Ferrari*/
          public class Ferrari implements ICar {

           @Override
           public void run() {
            System.out.println("法拉利啟動");
           }

           @Override
           public void stop() {
            System.out.println("法拉利停止");
           }
          }

            ~~ Jaguar.java ~~ 具體產品角色類

          /**
           * @author VerpHen
           * @date 2013年9月10日  上午9:42:21
           */

          package org.verphen.simpleFactory;

          /*具體產品角色類:汽車-捷豹-Jaguar*/
          public class Jaguar implements ICar {

           @Override
           public void run() {
            System.out.println("捷豹啟動");
           }

           @Override
           public void stop() {
            System.out.println("捷豹停止");
           }
          }

            ~~ SimpleFactory.java ~~ 工廠角色類

          /**
           * @author VerpHen
           * @date 2013年9月10日  上午9:29:02
           */

          package org.verphen.simpleFactory;

          /*工廠角色類*/
          public class SimpleFactory {

           /* 工廠方法,返回類型為抽象的產品角色 */
           public static ICar driveCar(String carType) {

            /* equalsIgnoreCase() 忽略carType大小寫 */
            if ("Benz".equalsIgnoreCase(carType)) {
             return new Benz();
            } else if ("Ferrari".equalsIgnoreCase(carType)) {
             return new Ferrari();
            } else if ("Jaguar".equalsIgnoreCase(carType)) {
             return new Jaguar();
            }
            return null;
           }
          }



           ~~ SimpleFactoryTest.java ~~ 測試類

          /**
           * @author VerpHen
           * @date 2013年9月10日  上午9:48:32
           */

          package org.verphen.simpleFactory;

          /*測試簡單工廠方法類*/
          public class SimpleFactoryTest {
           public static void main(String[] args) {

            // ICar car = SimpleFactory.driveCar("Benz");
            // ICar car = SimpleFactory.driveCar("Ferrari");
            ICar car = SimpleFactory.driveCar("Jaguar");

            car.run();
            car.stop();
           }
          }

          posted on 2013-09-13 11:06 順其自然EVO 閱讀(169) 評論(0)  編輯  收藏


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


          網站導航:
           
          <2013年9月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 江川县| 泰和县| 砚山县| 弥勒县| 锡林郭勒盟| 噶尔县| 遂宁市| 宁安市| 女性| 灵武市| 锡林郭勒盟| 司法| 中江县| 巴林右旗| 什邡市| 绥阳县| 曲水县| 平阳县| 大足县| 安龙县| 台前县| 博兴县| 弥渡县| 泸州市| 武宁县| 通化市| 连城县| 尉犁县| 平乐县| 宁阳县| 耿马| 庐江县| 海原县| 拜泉县| 洛川县| 陆川县| 汪清县| 手机| 丽水市| 礼泉县| 旌德县|