【java設計模式】【建立模式Creational Pattern】建造模式Builder Pattern

來源:互聯網
上載者:User

標籤:建模   direct   blog   str   sys   rri   public   ring   pattern   

 1 package com.tn.pattern; 2  3 public class Client { 4     public static void main(String[] args) { 5         Director director=Director.getInstance(); 6         director.construct(new ConcreteBuilder1());         7         director.construct(new ConcreteBuilder2()); 8     } 9 }10 11 class Director{12     static Director director;13     private Director(){}14     public static Director getInstance(){15         if(director==null)16             director=new Director();17         return director;18     }19     public void construct(Builder builder){20         builder.buildPart1();21         builder.buildPart2();22     }23 }24 25 interface Builder{26     void buildPart1();27     void buildPart2();28     Product retrieveResult();29 }30 31 class ConcreteBuilder1 implements Builder{32     Product product;33     @Override34     public void buildPart1() {35         System.out.println("ConcreteBuilder1.buildPart1()");36         product=new Product1();37     }38     39     @Override40     public void buildPart2() {}41     42     @Override43     public Product retrieveResult() {44         return product;45     }46 }47 48 class ConcreteBuilder2 implements Builder{49     Product product;50     @Override51     public void buildPart1() {}52     53     @Override54     public void buildPart2() {55         System.out.println("ConcreteBuilder2.buildPart2()");56         product=new Product2();57     }58     59     @Override60     public Product retrieveResult() {61         return product;62     }63 }64 65 interface Product{}66 67 class Product1 implements Product{68     public Product1(){69         System.out.println("Product1.Product1()");70     }71 }72 73 class Product2 implements Product{74     public Product2(){75         System.out.println("Product2.Product2()");76     }77 }

 

【java設計模式】【建立模式Creational Pattern】建造模式Builder Pattern

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.