빌더 패턴은 주로 "단계에서 복잡한 물체를 구축하는 데 사용되는데", "단계"는 안정적인 알고리즘이며 복잡한 물체의 일부는 종종 변합니다. 따라서 빌더 모델은 주로 "객체 부품"의 요구 사항을 해결하는 데 사용됩니다. 이를 통해 객체 구성 프로세스를보다 자세히 제어 할 수 있습니다.
패키지 com.shejimoshi.create.builder;/*** 함수 : 의도는 복잡한 객체의 구성을 표현에서 구분하는 것입니다. 따라서 동일한 시공 프로세스가 다른 표현을 만들 수 있도록하는 것입니다.* 복잡한 개체를 만들기위한 알고리즘이 객체의 구성 요소와 독립적 인 방법에 대한 공개 인물 부르기를 구조화해야 할 때; 보호 된 문자열 도구 2; 공개 개인 빌더 (String T1, String T2) {this.Tool1 = T1; this.tool2 = t2; } // 헤드 공개 추상적 void void buildhead (); // 신체를 그리기 공개 초록 void buildbody (); // 왼발과 오른발 공개 추상적 void buildArmleft (); 공개 초록 void buildArmright (); // 왼손과 오른손을 그리는 공개 초록 void buildlegleft (); 공개 초록 void buildlegright ();} 우리의 추상 생성기는 해당 서브 클래스를 도출하여 해당 실제 사용 유형을 구성합니다.
package com.shejimoshi.create.builder;/*** 기능 : 기능 : 의도는 복잡한 물체의 구성을 표현에서 구분하는 것입니다. 따라서 동일한 시공 프로세스가 다른 표현을 만들 수 있도록하는 것입니다.* 복잡한 개체를위한 알고리즘이 개체의 구성 요소와 어떻게 조립되는지 (/공공 등급의 인물은 개인 빌더가 튼튼하게 해야하는 경우*/홍보 대상이 있어야합니다. T1, 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;/*** 함수 : 기능 : 의도는 복잡한 물체의 구성을 표현과 분리하는 것입니다. 따라서 동일한 시공 프로세스가 다른 표현을 만들 수 있도록하는 것입니다. T1, 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; } // 개인 생성 공개 void createPerson () {pb.buildhead (); pb.buildbody (); pb.buildarmleft (); pb.buildarmright (); pb.buildlegleft (); pb.buildlegright (); }} 테스트 사례 :
package com.shejimoshi.create.builder;/*** 함수 : 클라이언트 프로그램*/public class test {// 해당 문자 생성 public static void create (personbuilder pb) {// 매개 변수별로 통과 한 모델을 사용하여 해당 객체를 생성합니다. Persondiberctor pd = new persondiforctor (pb); pd.createperson (); } public static void main (String [] args) {personThinBuilder ptb = new PersonThinBuilder ( "이미지 도구", "브러시"); 생성 (PTB); // 얇은 생성 System.out.println ( "======================================================================================================================= ========================================================================================================= ========================================================================================================= ============================================================================================================================ 얇은 System.out.out.println ( "===================================================================================================================================== System.out.out.out.out.out.out.out.out.out.out.out.out.out.out.out.out.out.out.out.out. 실행 결과 :
얇은 사람의 머리를 그리고, 얇은 몸을 그리며, 얇은 사람의 몸을 그리며, 얇은 사람의 왼쪽 팔을 그리며, 얇은 사람의 오른쪽 팔을 그리며, 얇은 사람의 왼쪽 다리를 그리며, 얇은 사람의 오른쪽 다리를 그립니다. ======================================================================================================================= ======================================================================================================================= 뚱뚱한 남자의 머리를 그리고, 뚱뚱한 남자의 몸을 그리며, 뚱뚱한 남자의 왼쪽 팔을 그리며, 뚱뚱한 남자의 오른쪽 다리를 그립니다.
위는 Java Builder 모델입니다. 모든 사람이 Java 프로그래밍을 배우는 데 도움이되기를 바랍니다.