บทความนี้อธิบายถึงการใช้โหมด Builder เพื่อใช้ฟังก์ชั่นการสมัครสำหรับแพ็คเกจโทรศัพท์มือถือ แบ่งปันสำหรับการอ้างอิงของคุณดังนี้:
1. คำจำกัดความรูปแบบ
ผู้สร้างเพียงแค่เข้าใจมันเพื่อสร้างสิ่งต่าง ๆ แต่โมเดลผู้สร้างไม่ใช่เรื่องง่าย แต่เป็นสิ่งที่ค่อนข้างซับซ้อน
2. ตัวอย่างของแบบจำลอง
1 การวิเคราะห์รูปแบบ
เรายืมตัวอย่างของลูกค้าที่ไปที่แพ็คเกจโทรศัพท์มือถือเพื่อสมัครแพ็คเกจโทรศัพท์มือถือเพื่อแสดงโมเดลนี้หลังจากการวิเคราะห์เชิงนามธรรมเราได้รับข้อมูลต่อไปนี้เกี่ยวกับลูกค้าจางซาน - ผู้ให้บริการ Business Hall Terminal Demand - ผู้สอน (แจ้งผู้สร้างแพ็คเกจโทรศัพท์มือถือประเภทใด
คอมพิวเตอร์ - ผู้สร้าง (สร้างแพ็คเกจโทรศัพท์มือถือต่างๆ)
แพ็คเกจโทรศัพท์มือถือ - ผลิตภัณฑ์
การสร้างแบบจำลองแบบคงที่ 2 โหมดผู้สร้าง
3 ตัวอย่างรหัส
3.1 สร้างผลิตภัณฑ์ - แพ็คเกจโทรศัพท์มือถือ
แพ็คเกจ com.demo.buider.model; MobilePackage ชั้นเรียนสาธารณะ {// ค่าใช้จ่ายโทรศัพท์ Bill Private Float Money; // SMS Private Int Shortinfo; // cailing เพลงสตริงส่วนตัว; ล่องลอยสาธารณะ getMoney () {คืนเงิน; } โมฆะสาธารณะ setMoney (เงินลอย) {this.money = เงิน; } สาธารณะ int getShortInfo () {return shortinfo; } โมฆะสาธารณะ setShortInfo (int shortinfo) {this.shortinfo = shortinfo; } Public String getMusic () {return music; } โมฆะสาธารณะ setMusic (เพลงสตริง) {this.music = music; -3.2 อินเตอร์เฟสผู้สร้าง
แพ็คเกจ com.demo.buider.itf; นำเข้า com.demo.buider.model.mobilePackage;/** * ตัวสร้างแพ็คเกจมือถือ * * @author * */อินเทอร์เฟซสาธารณะ imobileBuilder {// ค่าธรรมเนียมโทรศัพท์สำหรับการสร้างแพ็คเกจมือถือ // SMS สำหรับการสร้างแพ็คเกจมือถือเป็นโมฆะสาธารณะ buildshortinfo (); // cailing void public buildmusic (); // กลับไปที่วัตถุแพ็คเกจมือถือที่สร้างขึ้น MobilePackage GetMobilePackage ();}3.3 สร้างผู้สร้างเฉพาะ
ผู้สร้างเฉพาะ 1
แพ็คเกจ com.demo.buider.itf; นำเข้า com.demo.buider.base.abstractbasepackage; นำเข้า com.demo.buider.model.mobilePackage;/** * ** * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * เป็นโมฆะ buildMoney () {this.mobilePackage.setMoney (20.0f); } // cailing public void buildmusic () {this.mobilepackage.setmusic ("Angel"); } // SMS สำหรับการสร้างแพ็คเกจมือถือเป็นโมฆะสาธารณะ buildshortinfo () {this.mobilePackage.setshortinfo (400); } // กลับไปที่ Object Package Mobile MobilePackage GetMobilePackage () {return this.mobilePackage; -ผู้สร้างเฉพาะ 2
แพ็คเกจ com.demo.buider.itf; นำเข้า com.demo.buider.base.abstractbasepackage; นำเข้า com.demo.buider.model.mobilePackage;/** ** * ** * ** * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * เป็นโมฆะ buildMoney () {this.mobilePackage.setMoney (30.0f); } // cailing public void buildmusic () {this.mobilepackage.setmusic ("ทะเล"); } // SMS สำหรับการสร้างแพ็คเกจมือถือเป็นโมฆะสาธารณะ buildShortInfo () {this.mobilePackage.setShortInfo (600); } // กลับไปที่ Object Package Mobile MobilePackage GetMobilePackage () {return this.mobilePackage; -3.4 การสร้างที่ปรึกษา
แพ็คเกจ com.demo.buider.director; นำเข้า com.demo.buider.itf.imobilebuilder; นำเข้า com.demo.buider.model.mobilePackage;/** * ผู้สอนแพ็คเกจมือถือ * * @author maofw */ระดับสาธารณะ (mobileBuilder! = null) {// สร้างโทรศัพท์ Bill Bill BillBuilder.buildMoney (); // สร้างข้อความ mobilebuilder.buildshortinfo (); // สร้าง cailing mobilebuilder.buildmusic (); // กลับไปที่แพ็คเกจมือถือส่งคืน mobilebuilder.getMobilePackage (); } return null; -ให้ลูกค้าสั่งซื้อแพ็คเกจโทรศัพท์มือถือ
แพ็คเกจ com.demo.buider; นำเข้า com.demo.buider.director.mobiledirector; นำเข้า com.demo.buider.itf.mobilebuilderimpl1; นำเข้า com.demo.buider.itf.mobilebuilderimpl2; @param args */ โมฆะคงที่สาธารณะหลัก (สตริง [] args) {// สร้างที่ปรึกษา mobiledirector mobiledirector = ใหม่ mobiledirector (); // แผน 1 MobileBuilderImpl1 MobileBuilderImpl1 = ใหม่ MobileBuilderImpl1 (); // แผน 2 MobileBuilderImpl2 MobileBuilderImpl2 = ใหม่ MobileBuilderImpl2 (); PrintMessage (Mobiledirector.CreateMobilePackage (MobileBuilderImpl1)); PrintMessage (Mobiledirector.createMobilePackage (MobileBuilderImpl2)); }/*** ข้อมูลแพ็คเกจพิมพ์*/โมฆะสาธารณะคงที่ printMessage (MobilePackage MobilePackage) {System.out.println ("-telcoding:" + mobilePackage.getMoney () + "/t SMS:" MobilePackage.getShortInfo () -การรันผลลัพธ์
--Tel: 20.0 SMS: 400 Cailing: Angel
--Tel: 30.0 SMS: 600 Cailing: Dahai
3. หลักการของการตั้งค่าโมเดล
1 ขั้นตอนในการสร้างวัตถุที่ซับซ้อน
2. สร้างและแสดงการแยก
3 หลักการความรับผิดชอบเดี่ยว
4. ใช้โอกาส
1 เมื่อวัตถุผลิตภัณฑ์มีโครงสร้างที่ซับซ้อนอยู่ข้างใน
2 เมื่อจำเป็นต้องแยกวัตถุที่ซับซ้อนออกจากการเป็นตัวแทนพวกเขาอาจจำเป็นต้องสร้างการเป็นตัวแทนที่แตกต่างกัน
3 เมื่อจำเป็นต้องซ่อนประสิทธิภาพโครงสร้างของผลิตภัณฑ์จากลูกค้า
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับอัลกอริทึม Java ผู้อ่านที่มีความสนใจในเว็บไซต์นี้สามารถดูหัวข้อ: "โครงสร้างข้อมูล Java และการสอนอัลกอริทึม", "บทสรุปของเคล็ดลับการดำเนินงาน Java Dom", "บทสรุปของไฟล์ Java และเคล็ดลับการดำเนินการไดเรกทอรี" และ "สรุป
ฉันหวังว่าบทความนี้จะเป็นประโยชน์กับการเขียนโปรแกรม Java ของทุกคน