يستخدم نمط البناء بشكل أساسي "بناء كائن معقد في خطوات" ، حيث "الخطوات" عبارة عن خوارزمية مستقرة ، بينما تتغير أجزاء من الكائنات المعقدة غالبًا. لذلك ، يستخدم نموذج البناء بشكل أساسي لحل تغييرات الاحتياجات في "جزء الكائن". هذا يسمح لمزيد من التحكم التفصيلي في عملية بناء الكائن.
حزمة com.shejimoshi.create.builder ؛/*** الوظيفة: القصد من ذلك هو فصل كائن معقد عن تمثيله ، بحيث يمكن لعملية البناء نفسها إنشاء تمثيلات مختلفة* قابلية التطبيق:* عندما تكون الخوارزمية لإنشاء كائنات معقدة يجب أن تكون مستقلة عن مكونات الكائن وكيفية تجميعها*/////كانت الخوارزمية perferbuilder perfulder المطلوبة ؛ TOLED STRING TOOL2 ؛ personbuilder العامة (السلسلة T1 ، String T2) {this.tool1 = t1 ؛ this.tool2 = t2 ؛ } // رسم رأس Buildhead Buildhead () ؛ // ارسم الجسم التجريدي باطل البناء () ؛ // ارسم القدم اليسرى والقدم اليمنى المجردة المجردة void buildarmleft () ؛ التجريد الجمهور void buildarmright () ؛ // ارسم اليد اليسرى واليد اليمنى الجمهور التجريدي buildlegleft () ؛ التجريد الجمهور الفراغ buildlegright () ؛} يستمد مولدنا التجريدي الفئات الفرعية المقابلة لإنشاء نوع الاستخدام الفعلي المقابل
package com.shejimoshi.create.builder ؛/*** الوظيفة: القصد من ذلك هو فصل بناء كائن معقد عن تمثيله ، بحيث يمكن لعملية البناء نفسها إنشاء تمثيلات مختلفة* قابلية تطبيقها: String T2) {Super (T1 ، T2) ؛ } Override public void buildhead () {system.out.println ("ارسم رأسًا رقيقًا") ؛ } Override public void buildbody () {system.out.println ("ارسم جسمًا رقيقًا") ؛ } Override public void buildarmleft () {system.out.println ("ارسم الذراع الأيسر الرقيق") ؛ } Override public void buildarmright () {system.out.println ("ارسم الساق اليسرى الرقيقة") ؛ } Override public void buildlegleft () {system.out.println ("ارسم الساق اليسرى الرقيقة") ؛ } Override public void buildlegright () {system.out.println ("ارسم الساق اليمنى للرجل الرقيق") ؛ }} package com.shejimoshi.create.builder ؛/*** الوظيفة: القصد من ذلك هو فصل بناء كائن معقد عن تمثيله ، بحيث يمكن لعملية البناء نفسها إنشاء تمثيلات مختلفة* قابلية التطبيق: String T2) {Super (T1 ، T2) ؛ } Override public void buildhead () {system.out.println ("ارسم رأس رجل سمين") ؛ } Override public void buildbody () {system.out.println ("ارسم جسم رجل سمين") ؛ } Override public void buildarmleft () {system.out.println ("ارسم ذراع الرجل اليسرى") ؛ } Override public void buildArmRight () {system.out.println ("ارسم ذراع الرجل الأيمن") ؛ } Override public void buildlegleft () {system.out.println ("ارسم الساق اليسرى رجل سمين") ؛ } Override public void buildlegright () {system.out.println ("ارسم الساق اليمنى من الرجل السمين") ؛ }} يتم تسليم مولدنا إلى القائد لتنفيذ الإجراء الذي تم إنشاؤه
package com.shejimoshi.create.builder ؛/*** الوظيفة: إنشاء قائد الحرف*/public class persondirector {private personbuilder pb ؛ // تمرير نموذج إنشاء الأحرف المقابل العام persondirector (personbuilder pber) {this.pb = pber ؛ } // إنشاء شخص public void createPerson () {pb.buildhead () ؛ pb.buildbody () ؛ pb.buildarmleft () ؛ pb.buildarmright () ؛ pb.buildlegleft () ؛ pb.buildlegright () ؛ }} حالات الاختبار:
حزمة com.shejimoshi.create.builder ؛/*** الوظيفة: برنامج العميل*/اختبار الفئة العامة {// إنشاء الفراغ الثابت في الحرف العام المقابل (personbuilder pb) {// إنشاء الكائن المقابل مع النموذج الذي تم تمريره بواسطة المعلمات persondirector pd = new persondector (pb) ؛ pd.createperson () ؛ } public static void main (string [] args) {personThinBuilder ptb = new PersonThinBuilder ("tool tool" ، "brush") ؛ إنشاء (PTB) ؛ // إنشاء رقيقة System.out.println ("======================================================================= ======================================================================================== ======================================================================================== ========================================================================================= قم بإنشاء نظام رفيع. System.out.out.out.out.out.out.out.out.out.out.out.out.out.out.out.out.out.out. نتائج التشغيل:
ارسم رأسًا رفيعًا ، ارسم جسمًا رفيعًا ، ارسم جسمًا رفيعًا ، ارسم ذراعه الأيسر للرجل الرقيق ، ارسم ذراعه الأيمن للرجل الرقيق ، ارسم ساقه الأيسر الرقيق ، ارسم ساقه الأيمن الرقيق ، =========================================================================================================================================== =========================================================================================================================================== ارسم رأس رجل سمين ، ارسم جسمًا سمينًا ، ارسم ذراعه الأيسر للرجل الدهون ، ارسم ساقه اليمنى السمين
ما سبق هو نموذج باني Java ، آمل أن يكون من المفيد للجميع تعلم برمجة Java.