디자인 모드 - 생 성 형 - Builder
무엇
복잡 한 대상 을 만 드 는 방식
왜
대상 생 성 절 차 를 간소화 하 였 습 니 다.
코드 가 독성 을 향상 시 켰 습 니 다.
대상 생 성 과정 과 분리 표시
어떻게
/**
* @Description:
* @date 2018-02-17 21:22
*/
@ToString
@Getter
@Setter
public class Person {
private final String name;
private int age;
private String sex;
private String father;
private String mather;
public static class Builder {
private final String name;
private int age;
private String sex;
private String father;
private String mather;
public Builder(String name) {
this.name = name;
}
public Builder age(int age) {
this.age = age;
return this;
}
public Builder sex(String sex) {
this.sex = sex;
return this;
}
public Builder mather(String mather) {
this.mather = mather;
return this;
}
public Builder father(String father) {
this.father = father;
return this;
}
public Person Build(){
return new Person(this);
}
}
private Person(Builder builder){
this.name = builder.name;
this.sex = builder.sex;
this.father = builder.father;
this.mather = builder.mather;
this.age = builder.age;
}
}
public static void main(String[] args) throws IOException {
Person person = new Person.Builder(" ").sex(" ").age(23).Build();
System.out.println(person);
}
단판
@Setter
@Getter
@ToString
public class Schema {
/**
*
*/
@NonNull
private String intent;
/**
*
*/
private int score;
public Schema buildIntent(String intent){
this.intent = intent;
return this;
}
public Schema buildScore(int score){
this.score = score;
return this;
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
디자인 모델 에 대한 인식 (1)대상 을 만 드 는 데 사용 할 인 터 페 이 스 를 정의 하여 하위 클래스 가 어떤 종 류 를 예화 할 지 결정 합 니 다.Factory Method 는 클래스 의 실례 화 를 하위 클래스 로 지연 시 킵 니 다....
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.