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

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

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

     

        定義一個用于創(chuàng)建對象的接口,讓子類決定實(shí)例化哪一個類。工廠方法使一個類的實(shí)例化延遲到了子類。

       工廠方法模式實(shí)現(xiàn),客戶端進(jìn)行工廠的實(shí)例化,產(chǎn)生哪一個工廠實(shí)例的邏輯判斷依然存在。工廠方法把簡單工廠內(nèi)部邏輯判斷轉(zhuǎn)移到了客
    戶端。工廠方法模式就是利用了“依賴倒轉(zhuǎn)原則”解決了簡單工廠模式違背“開
    -閉原則”的問題。



    package factroyMethod;

    public class Operation  {
        
    private double dNumberA;
        
    private double dNumberB;
        
        
    public double getResults(){
            
    double result = 0d;
            
    return result ;
        }


        
    public double getdNumberA() {
            
    return dNumberA;
        }


        
    public void setdNumberA(double dNumberA) {
            
    this.dNumberA = dNumberA;
        }


        
    public double getdNumberB() {
            
    return dNumberB;
        }


        
    public void setdNumberB(double dNumberB) {
            
    this.dNumberB = dNumberB;
        }


        
    public Operation(double dNumberA, double dNumberB) {
            
    this.dNumberA = dNumberA;
            
    this.dNumberB = dNumberB;
        }


        
    public Operation(double dNumberA) {
            
    this.dNumberA = dNumberA;
        }


        
    public Operation() {
        }

    }




    package factroyMethod;

    public interface IFactory {
        Operation getOperation();
    }



    package factroyMethod;


    public class FactroyAdd implements IFactory {

        
    public Operation getOperation() {
            
    return new OperationAdd() ;
        }


    }



    package factroyMethod;


    public class FactroySub implements IFactory {

        
    public Operation getOperation() {
            
    return new OperationSub() ;
        }


    }



    package factroyMethod;

    public class FactroySqrt implements IFactory {

        @Override
        
    public Operation getOperation() {
            
            
    return  new OperationSqrt();
        }


    }



    package factroyMethod;

    public class OperationAdd extends Operation {

        
    public double getResults() {
            
    return  getdNumberA() + getdNumberB() ;
        }

        

    }



    package factroyMethod;

    public class OperationSub extends Operation {

        
    public double getResults() {    
            
    return  getdNumberA() - getdNumberB() ;
        }


    }



    package factroyMethod;

    public class OperationSqrt extends Operation {

        @Override
        
    public double getResults() {
            
    return Math.sqrt(getdNumberA());
        }

        

    }



    package factroyMethod;

    import java.util.Scanner;


    public class TestCalculate {
        
    public static void main(String[] args)throws Exception{        
            
    while (true{
                Scanner src 
    = new Scanner(System.in);
                
    double a = src.nextDouble();
                String operation 
    = src.next();
                
    double b = src.nextDouble();
                IFactory factory 
    = null ;
                
    if(operation.equals("+"))factory = new FactroyAdd();
                
    else if(operation.equals("-"))factory = new FactroySub();
                
    else factory = new FactroySqrt();
                
                Operation opr 
    =factory.getOperation();
                opr.setdNumberA(a);
                opr.setdNumberB(b);
                System.out.println(opr.getResults());
            }

        }

        
        
    }


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


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲免费日韩无码系列| 亚洲尹人九九大色香蕉网站| 国产成人一区二区三区免费视频| 啦啦啦高清视频在线观看免费| www视频免费看| 18禁止观看免费私人影院| h视频在线观看免费网站| 100部毛片免费全部播放完整| 啦啦啦完整版免费视频在线观看 | 美女网站在线观看视频免费的| 四虎影视永久在线精品免费| 国产精品高清免费网站| 99精品视频免费| 日韩精品无码专区免费播放| 亚洲一级毛片免费看| 免费观看黄网站在线播放| 暖暖免费高清日本中文| vvvv99日韩精品亚洲| 亚洲日产韩国一二三四区| 久久久久久a亚洲欧洲AV| 亚洲成人在线免费观看| 亚洲熟妇AV乱码在线观看| 国产亚洲视频在线观看| 四虎国产精品免费永久在线| 91精品啪在线观看国产线免费| www.黄色免费网站| 免费a级毛片18以上观看精品| 亚洲一区二区女搞男| 4480yy私人影院亚洲| 亚洲人成色77777在线观看| 免费无码一区二区| 日本免费一区二区三区| 成在人线AV无码免费| 亚洲国产中文v高清在线观看| 久久精品国产亚洲夜色AV网站| 色在线亚洲视频www| 在线播放免费人成视频网站| 久久久久国产精品免费网站| 性色av无码免费一区二区三区| 亚洲v国产v天堂a无码久久| 久久99国产亚洲精品观看|