Builder 방식 으로 대상 예제 코드 를 만 듭 니 다.

머리말
대상 을 만 들 려 면 데 이 터 를 초기 화해 야 합 니 다.데이터 매개 변 수 는 쉽게 구별 되 지 않 습 니 다.전송 할 수 있 고 전송 하지 않 을 수 있 을 때 Builder 를 사용 하여 만 드 는 방법 을 고려 할 수 있 습 니 다.다른 사람 이 쓴 Bulder 방식 으로 호출 하 는 것 을 볼 때마다 so cool 이 라 고 생각 합 니 다.자신 도 Builder 방식 으로 대상 을 만 듭 시다.
다음은 더 이상 할 말 이 없 으 니 상세 한 소 개 를 살 펴 봅 시다.
현재 일련의 인원 의 기본 정 보 를 입력 하 는 예:
Person 클래스 만 들 기

public class Person {
private String name;
private int age;
private float height;
private float weight;

public Person(String name, int age, float height, float weight) {
this.name = name;
this.age = age;
this.height = height;
this.weight = weight;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

public float getHeight() {
return height;
}

public void setHeight(float height) {
this.height = height;
}

public float getWeight() {
return weight;
}

public void setWeight(float weight) {
this.weight = weight;
}
}
그러면 생 성 대상 은 바로 이 렇 습 니 다.뒤의 매개 변 수 는 무엇 을 나타 내 는 지 쉽게 알 수 없고 가 독성 이 강하 지 않 습 니 다.

new Person("   ",18,150,43);
new Person("  ",17,164,48);
Builder 모드 로 개조
Builder 클래스 를 만 듭 니 다.속성 은 Person 클래스 와 마찬가지 로 SetXxx()방법 을 추가 합 니 다.

static class Builder{
private String name;
private int age;
private float height;
private float weight;

public void setName(String name) {
this.name = name;
}

public void setAge(int age) {
this.age = age;
}

public void setHeight(float height) {
this.height = height;
}

public void setWeight(float weight) {
this.weight = weight;
}
}
Person 의 구조 방법 을 Builder 대상 으로 바 꾸 고 Builder 대상 의 속성 치 를 모두 Person 대상 에 부여 합 니 다.

public Person(Builder builder){
this.name = builder.name;
this.age = builder.age;
this.height = builder.height;
this.weight = builder.weight;
}
Builder 클래스 를 개조 합 니 다.관건 적 인 단 계 는 각 set 방법 을 Builder 클래스 대상 으로 되 돌려 주 는 것 입 니 다.그러면 set 방법 을 계속 유쾌하게 연속 으로 호출 할 수 있 습 니 다.마지막 으로 build()생 성 방법 을 Person 대상 으로 되 돌려 줍 니 다.

static class Builder{
private String name;
private int age;
private float height;
private float weight;

public Builder setName(String name) {
this.name = name;
return this;
}

public Builder setAge(int age) {
this.age = age;
return this;
}

public Builder setHeight(float height) {
this.height = height;
return this;
}

public Builder setWeight(float weight) {
this.weight = weight;
return this;
}

public Person build(){
return new Person(this);
}
}
각 set 방법의 반환 값 형식 을 Builder 로 바 꾸 고 매번 builder 대상 으로 돌아 가 야 set 방법 을 연속 적 인 체인 호출 을 실현 할 수 있 습 니 다.
build()방법 은 person 대상 을 만 들 고 Person 의 파 라 메 트릭 구조 방법 을 호출 하여 builder 대상 의 속성 을 순서대로 person 대상 에 부여 합 니 다.person 의 속성 값 은 체인 호출 set 방법의 각 값 입 니 다.
Builder 모드 를 사용 하여 Person 대상 을 만 들 면 코드 의 가 독성 이 크게 향상 되 었 음 을 알 수 있 습 니 다.주:Builder 생 성 방식 은 생 성 대상 이 적은 경우 에 사 용 됩 니 다.

Person person = new Person.Builder()
.setName("  ")
.setAge(20)
.setHeight(162)
.setWeight(45)
.build();
총결산
이상 은 이 글 의 전체 내용 입 니 다.본 논문 의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 참고 학습 가치 가 있 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주 셔 서 저희 에 대한 지지 에 감 사 드 립 니 다.

좋은 웹페이지 즐겨찾기