<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    vjame

    優(yōu)化代碼是無止境的
    隨筆 - 65, 文章 - 9, 評(píng)論 - 26, 引用 - 0
    數(shù)據(jù)加載中……

    單態(tài)模式和簡單工廠模式

    單態(tài)模式
     Singleton模式主要作用是保證在Java應(yīng)用程序中,一個(gè)類Class只有一個(gè)實(shí)例存在。
    在項(xiàng)目的很多地方都會(huì)用到它,比如說數(shù)據(jù)庫的鏈接。
    使用Singleton的好處還在于可以節(jié)省內(nèi)存,因?yàn)樗拗屏藢?shí)例的個(gè)數(shù),有利于Java垃圾回收。

    1. 編寫代碼
    package com.strongit.singleton;


    class A {
        
    private static final A a = new A();
        
    public static A getSingleInstance(){
            
    return a;
        }
        
    public void say(){
            System.out.println(
    "hello");
        }
    }

    public class SingletonDemo {

        
    /**
         * 
    @param args
         
    */
        
    public static void main(String[] args) {
            
    // TODO Auto-generated method stub
                A a = A.getSingleInstance();
                a.say();
                System.out.println(A.getSingleInstance());

                System.out.println(A.getSingleInstance());
            
        }

    }

    2.運(yùn)行結(jié)果
    hello...
    com.strongit.singleton.A@1c78e57
    com.strongit.singleton.A@1c78e57


    簡單工廠模式
    簡單工廠模式又叫靜態(tài)工廠模式,顧名思義,它是用來實(shí)例化目標(biāo)類的靜態(tài)類。下面我主要通過一個(gè)簡單的實(shí)例說明簡單工廠及其優(yōu)點(diǎn)。 

    package com.strongit.factory;


    //抽象汽車
    interface Car{
        
    public void run();
        
    public void stop();
    }

    //奔馳汽車
    class Benz implements Car{
        
    public void run() {
            System.out.println(
    "BMW run ");
        }

        
    public void stop() {
            System.out.println(
    "BMW stop  ");
        }
    }

    //福特汽車
    class Ford implements Car{

        
    public void run() {
            System.out.println(
    "Ford run ");
        }
        
    public void stop() {
            System.out.println(
    "Ford stop ");
        }
        
    }

    //工廠幫助客服返回實(shí)例化對象
    class Factory{
        
    public static Car getCarInstance(String type){
            Car car 
    = null;
            
    try {
                
    //java反射機(jī)制
                car = (Car)Class.forName("com.strongit.factory."+type).newInstance();
            } 
    catch (InstantiationException e) {
                e.printStackTrace();
            } 
    catch (IllegalAccessException e) {
                e.printStackTrace();
            } 
    catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
            
    return car;
        }
    }


    //客服端調(diào)用
    public class FactoryDemo {

        
    public static void main(String[] args) {
            String type 
    = "Ford";
            Car car 
    = Factory.getCarInstance(type);
            
    if(car == null){
                System.out.println(
    "error ");
            }
    else{
                car.run();
            }
        }
    }

    posted on 2008-10-30 16:47 lanjh 閱讀(298) 評(píng)論(0)  編輯  收藏 所屬分類: 設(shè)計(jì)模式


    只有注冊用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 大学生一级特黄的免费大片视频 | 国产VA免费精品高清在线| 亚洲一区二区女搞男| 中文字幕亚洲免费无线观看日本| 亚洲国产成a人v在线| 四虎影永久在线高清免费| 久久青草免费91观看| 亚洲欧美日韩中文高清www777| 亚洲精品国自产拍在线观看| 日韩精品人妻系列无码专区免费| 亚洲精品无码一区二区| 亚洲精品国产美女久久久| 国产一卡二卡3卡四卡免费| a级毛片免费观看网站| 亚洲一级视频在线观看| 亚洲日韩av无码| 四虎www免费人成| 免费精品无码AV片在线观看| 亚洲第一se情网站| 亚洲精彩视频在线观看| JLZZJLZZ亚洲乱熟无码| AV免费网址在线观看| 日韩电影免费在线观看中文字幕| 亚洲国产欧美国产综合一区 | 国产成人精品免费视| 国产福利电影一区二区三区,免费久久久久久久精 | 一个人免费观看www视频在线| a级毛片免费观看在线| 亚洲精华液一二三产区| 亚洲色图黄色小说| 亚洲乱码无码永久不卡在线| 国产成人免费a在线视频色戒| 国产高清不卡免费在线| 久久国产精品免费专区| 精选影视免费在线 | 亚洲av无码专区在线电影天堂 | 国产裸体美女永久免费无遮挡| 亚洲av无码专区青青草原| 国产精品亚洲自在线播放页码| 亚洲AV无码成人网站久久精品大 | 亚洲AV成人精品日韩一区18p|