在 Java 中,Builder 模式是一種創建型設計模式,它允許你以靈活且可讀的方式構建復雜對象。以下是一個使用 Builder 模式實現的簡單類示例:
首先,我們創建一個名為 Person 的類,該類具有多個屬性:
public class Person {
private String firstName;
private String lastName;
private int age;
private String address;
private Person(Builder builder) {
this.firstName = builder.firstName;
this.lastName = builder.lastName;
this.age = builder.age;
this.address = builder.address;
}
public String getFirstName() {
return firstName;
}
public String getLastName() {
return lastName;
}
public int getAge() {
return age;
}
public String getAddress() {
return address;
}
public static class Builder {
private String firstName;
private String lastName;
private int age;
private String address;
public Builder setFirstName(String firstName) {
this.firstName = firstName;
return this;
}
public Builder setLastName(String lastName) {
this.lastName = lastName;
return this;
}
public Builder setAge(int age) {
this.age = age;
return this;
}
public Builder setAddress(String address) {
this.address = address;
return this;
}
public Person build() {
return new Person(this);
}
}
}
在這個例子中,我們使用了一個嵌套的靜態類 Builder 來構建 Person 類的實例。Builder 類具有與 Person 類相同的屬性,并為每個屬性提供了設置方法。每個設置方法都返回 Builder 實例本身,以便我們可以使用鏈式調用。
要使用 Builder 模式創建一個 Person 對象,我們可以這樣做:
public class Main {
public static void main(String[] args) {
Person person = new Person.Builder()
.setFirstName("John")
.setLastName("Doe")
.setAge(30)
.setAddress("123 Main St")
.build();
System.out.println("First Name: " + person.getFirstName());
System.out.println("Last Name: " + person.getLastName());
System.out.println("Age: " + person.getAge());
System.out.println("Address: " + person.getAddress());
}
}
這個例子展示了如何使用 Builder 模式創建一個 Person 對象,并通過鏈式調用設置其屬性。這種方式使得對象的創建過程更加靈活和可讀。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。