读书人

Design Pattern-Builder方式

发布时间: 2013-03-04 17:22:12 作者: rapoo

Design Pattern--Builder模式
package DesignPattern; public class Book { /** * 书名 */ private String bookName; /** * 可借数量 */ private String leandableNum; /** * 索引号 */ private String reference; /** * 作者 */ private String writer; /** * 出版社 */ private String publisher; /** * 出版年 */ private String pubYear; public Book(String bookName, String leandableNum, String reference, String writer, String publisher, String pubYear) { this.bookName=bookName; this.leandableNum=leandableNum; this.reference=reference; this.writer=leandableNum; this.publisher=publisher; this.pubYear=pubYear; } }

Book book = new Book(“深入分析Java Web技术内幕 [专著]”, “0”, “TP312JA/X781”, “许令波”, “电子工业出版社”, “2012”);

public Book(String bookName) { this( bookName,""); } public Book(String bookName, String leandableNum) { this( bookName,leandableNum,""); } public Book(String bookName, String leandableNum, String reference) { this( bookName,leandableNum,reference,""); } public Book(String bookName, String leandableNum, String reference, String writer) { this( bookName,leandableNum,reference,writer,""); } public Book(String bookName, String leandableNum, String reference, String writer, String publisher) { this( bookName,leandableNum,reference,writer,publisher,""); } public Book(String bookName, String leandableNum, String reference, String writer, String publisher, String pubYear) { this.bookName=bookName; this.leandableNum=leandableNum; this.reference=reference; this.writer=leandableNum; this.publisher=publisher; this.pubYear=pubYear; }

?

public Book() { }public void setBookName(String bookName) { this.bookName = bookName;}public void setLeandableNum(String leandableNum) { this.leandableNum = leandableNum;}public void setReference(String reference) { this.reference = reference;}public void setWriter(String writer) { this.writer = writer;}public void setPublisher(String publisher) { this.publisher = publisher;}public void setPubYear(String pubYear) { this.pubYear = pubYear;}public void setBook(Book book) { this.book = book;} Book book = new Book();book. setBookName(“深入分析Java Web技术内幕 [专著]”);book .setLeandableNum(“0”);book .setReference(“TP312JA/X781”);book . setWriter (“许令波”);book . setPublisher (“电子工业出版社”);book . setPubYear (“2012”);

?

package DesignPattern; public class Book { /** * 书名 */ private String bookName; /** * 可借数量 */ private String leandableNum; /** * 索引号 */ private String reference; /** * 作者 */ private String writer; /** * 出版社 */ private String publisher; /** * 出版年 */ private String pubYear; public Book(Builder builder) { this.bookName = builder.bookName; this.leandableNum = builder.leandableNum; this.reference = builder.reference; this.writer = builder.writer; this.publisher = builder.publisher; this.pubYear = builder.pubYear; } public static class Builder { /** * 书名 */ protected String bookName; /** * 可借数量 */ protected String leandableNum; /** * 索引号 */ protected String reference; /** * 作者 */ protected String writer; /** * 出版社 */ protected String publisher; /** * 出版年 */ private String pubYear; public Book build() { return new Book(this); } public void setBookName(String bookName) { this.bookName = bookName; } public void setLeandableNum(String leandableNum) { this.leandableNum = leandableNum; } public void setReference(String reference) { this.reference = reference; } public void setWriter(String writer) { this.writer = writer; } public void setPublisher(String publisher) { this.publisher = publisher; } public void setPubYear(String pubYear) { this.pubYear = pubYear; } } }

Book.Builder builder = new Builder();builder. setBookName(“深入分析Java Web技术内幕 [专著]”);builder.setLeandableNum(“0”);builder.setReference(“TP312JA/X781”);builder. setWriter (“许令波”);builder. setPublisher (“电子工业出版社”);builder. setPubYear (“2012”);Book book = builder.build();

?

?

?

?

?

读书人网 >编程

热点推荐