Artikel ini menjelaskan penggunaan mode builder untuk menerapkan fungsi melamar paket ponsel. Bagikan untuk referensi Anda, sebagai berikut:
1. Definisi Pola
Pembangun hanya memahaminya untuk membangun sesuatu, tetapi model pembangun bukanlah hal yang sederhana, tetapi hal yang relatif kompleks.
2. Contoh model
1 analisis pola
Kami meminjam contoh pelanggan yang pergi ke paket ponsel untuk mengajukan paket ponsel untuk menggambarkan model ini setelah analisis abstrak, kami mendapatkan informasi berikut tentang pelanggan Zhang San - operator Balai Bisnis Terminal permintaan - instruktur (memberi tahu pembangun paket ponsel seperti apa yang akan diproduksi))
Komputer - Pembangun (Bangun berbagai paket ponsel)
Paket Ponsel - Produk
2 pemodelan statis mode pembangun
3 contoh kode
3.1 Buat Produk - Paket Ponsel
Paket com.demo.buider.model; kelas publik MobilePackage {// Telepon Tagihan Private Float Money; // SMS Private Int Shortinfo; // Cailing Private String Music; public float getMoney () {return money; } public void setMoney (float money) {this.money = money; } public int getShortInfo () {return shortInfo; } public void setShortInfo (int shortinfo) {this.shortInfo = shortInfo; } public String getMusic () {return musik; } public void setMusic (String Music) {this.music = musik; }}3.2 Antarmuka Pembangun
Paket com.demo.buider.itf; import com.demo.buider.model.mobilepackage;/** * Pembuat paket seluler * * @author * */antarmuka publik ImobileBuilder {// biaya telepon untuk membangun paket seluler public void buildmoney (); // SMS untuk membangun paket seluler public void buildshortinfo (); // Cailing public void buildmusic (); // Kembali ke Objek Paket Seluler yang Dibangun MobilePackage Public GetMobilePackage ();}3.3 Tetapkan pembangun tertentu
Pembangun spesifik 1
Paket com.demo.buider.itf; impor com.demo.buider.base.abstractbasepackage; impor com.demo.buider.model.mobilepackage;/** * Paket 1 * @Author maofw */Public Class MobileBuilderImpl1 Memperpanjang abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrak abstrakbasepack * level foroid phon -{phon -tuan phon -foroid phon -tuan phon -tuan buildmoney () {this.mobilePackage.setMoney (20.0f); } // Cailing public void buildmusic () {this.mobilePackage.setMusic ("Angel"); } // sms untuk membangun paket seluler public void buildshortInfo () {this.mobilePackage.setShortInfo (400); } // Kembali ke Objek Paket Seluler yang Dibangun MobilePackage GetMobilePackage () {return this.mobilePackage; }}Pembangun spesifik 2
Paket com.demo.buider.itf; impor com.demo.buider.base.abstractbasepackage; impor com.demo.buider.model.mobilepe; buildmoney () {this.mobilePackage.setMoney (30.0f); } // cailing public void buildmusic () {this.mobilePackage.setMusic ("sea"); } // sms untuk membangun paket seluler public void buildshortInfo () {this.mobilePackage.setShortInfo (600); } // Kembali ke Objek Paket Seluler yang Dibangun MobilePackage GetMobilePackage () {return this.mobilePackage; }}3.4 Membuat Mentor
package com.demo.buider.director;import com.demo.buider.itf.IMobileBuilder;import com.demo.buider.model.MobilePackage;/** * Mobile package instructor* * @author maofw * */public class MobileDirector{ public MobilePackage createMobilePackage(IMobileBuilder mobileBuilder) { if (MobileBuilder! = NULL) {// Bangun Telepon Bill MobileBuilder.BuildMoney (); // Bangun pesan teks MobileBuilder.BuildshortInfo (); // Bangun Cailing MobileBuilder.BuildMusic (); // kembali ke paket seluler return mobileBuilder.getMobilePackage (); } return null; }}Biarkan pelanggan memesan paket ponsel
Paket com.demo.buider; impor com.demo.buider.director.mobileDirector; impor com.demo.buider.itf.mobileBuilderImpl1; com.demo.buider.modilePleMpl2; impor com.demo.buider.modelderePl2; impor com.demo.buider.modeldermleMpl2; impor com.demo.buider.modeldermleMpl2; impor com.demo.buider.modelderderderImpl2; impor com.demo.buider.modelderderderMpl2; @param args */ public static void main (string [] args) {// Buat seorang mentor mobileDirector MobileDirector = new MobileDirector (); // Rencanakan 1 MobileBuilderImpl1 MobileBuilderImpl1 = new MobileBuilderImpl1 (); // Rencanakan 2 MobileBuilderImpl2 MobileBuilderImpl2 = new MobileBuilderImpl2 (); printmessage (mobileDirector.createMobilePackage (MobileBuilderImpl1)); printmessage (MobileDirector.CreateMobilePackage (MobileBuilderImpl2)); }/*** Informasi paket cetak*/public static void printMessage (mobilePackage mobilePackage) {System.out.println ("-telcoding:" + MobilePackage.getMoney () + "/t Sms:" + MobilePackage.getShortInfo () + "Twitter/T CAIL:" Twitter (Twitter/T Cail: "Twitter (Twitter) (Twitter) (Twitter) (Twitter). }}Hasil berjalan
--TEL: 20.0 SMS: 400 Cailing: Angel
--TEL: 30.0 SMS: 600 Cailing: Dahai
3. Prinsip pengaturan model
1 langkah untuk membuat objek yang kompleks
2. Bangun dan mewakili pemisahan
3 Prinsip Tanggung Jawab Tunggal
4. Gunakan kesempatan
1 Ketika objek produk memiliki struktur yang kompleks di dalamnya
2 Ketika objek kompleks perlu dipisahkan dari representasi, mereka mungkin perlu membuat representasi yang berbeda
3 ketika perlu menyembunyikan kinerja struktural produk dari pelanggan
Untuk informasi lebih lanjut tentang algoritma java, pembaca yang tertarik dengan situs ini dapat melihat topik: "struktur data java dan tutorial algoritma", "ringkasan tips node dom java", "ringkasan file operasi java dan direktori" dan "ringkasan tip operasi java cache" tips java "tips java" Tips "Java Cache Tips"
Saya harap artikel ini akan membantu pemrograman Java semua orang.