diff --git a/blog/builder/src/builder/Member.java b/blog/builder/src/builder/Member.java new file mode 100644 index 00000000..45133bd7 --- /dev/null +++ b/blog/builder/src/builder/Member.java @@ -0,0 +1,88 @@ +package builder; + +public class Member { + + private final String email; + private final String password; + private final String name; + private final String address; + private final String phone; + + public Member(String id, String password, String name, String address, String phone) { + this.email = id; + this.password = password; + this.name = name; + this.address = address; + this.phone = phone; + } + + public static MemberBuilder builder() { + return new MemberBuilder(); + } + + public static class MemberBuilder { + private String email; + private String password; + private String name; + private String address; + private String phone; + + private MemberBuilder() { + } + + public MemberBuilder email(String email) { + this.email = email; + return this; + } + public MemberBuilder password(String password) { + this.password = password; + return this; + } + public MemberBuilder name(String name) { + this.name = name; + return this; + } + public MemberBuilder address(String address) { + this.address = address; + return this; + } + public MemberBuilder phone(String phone) { + this.phone = phone; + return this; + } + public Member build() { + return new Member(email, password, name, address, phone); + } + } + + public String getEmail() { + return email; + } + + public String getPassword() { + return password; + } + + public String getName() { + return name; + } + + public String getAddress() { + return address; + } + + public String getPhone() { + return phone; + } + + @Override + public String toString() { + return "builder.Member{" + + "email='" + email + '\'' + + ", password='" + password + '\'' + + ", name='" + name + '\'' + + ", address='" + address + '\'' + + ", phone='" + phone + '\'' + + '}'; + } +} diff --git a/blog/builder/src/builder/Test.java b/blog/builder/src/builder/Test.java new file mode 100644 index 00000000..7bff55ca --- /dev/null +++ b/blog/builder/src/builder/Test.java @@ -0,0 +1,15 @@ +package builder; + +public class Test { + + public static void main(String[] args) { + + Member member = Member.builder() + .email("email@naver.com") + .name("kim") + .password("1234") + .build(); + + System.out.println("member = " + member); + } +} diff --git a/blog/builder/src/constructor/Member.java b/blog/builder/src/constructor/Member.java new file mode 100644 index 00000000..07d8e489 --- /dev/null +++ b/blog/builder/src/constructor/Member.java @@ -0,0 +1,57 @@ +package constructor; + +public class Member { + + private final String email; + private final String password; + private final String name; + private final String address; + private final String phone; + + public Member(String email, String password, String name, String address, String phone) { + this.email = email; + this.password = password; + this.name = name; + this.address = address; + this.phone = phone; + } + + public Member(String email, String password, String name) { + this(email, password, name, null, null); + } + + public Member(String email, String password) { + this(email, password, null, null, null); + } + + public String getEmail() { + return email; + } + + public String getPassword() { + return password; + } + + public String getName() { + return name; + } + + public String getAddress() { + return address; + } + + public String getPhone() { + return phone; + } + + @Override + public String toString() { + return "builder.Member{" + + "email='" + email + '\'' + + ", password='" + password + '\'' + + ", name='" + name + '\'' + + ", address='" + address + '\'' + + ", phone='" + phone + '\'' + + '}'; + } +} diff --git a/blog/builder/src/constructor/Test.java b/blog/builder/src/constructor/Test.java new file mode 100644 index 00000000..2bcb3e85 --- /dev/null +++ b/blog/builder/src/constructor/Test.java @@ -0,0 +1,12 @@ +package constructor; + +public class Test { + public static void main(String[] args) { + + Member member1 = new Member("email@naver.com", "1234", "kim"); + Member member2 = new Member("email@naver.com", "1234", "kim", "seoul", "01012341234"); + + System.out.println("member1 = " + member1); + System.out.println("member2 = " + member2); + } +} diff --git a/blog/builder/src/setter/Member.java b/blog/builder/src/setter/Member.java new file mode 100644 index 00000000..deb964a4 --- /dev/null +++ b/blog/builder/src/setter/Member.java @@ -0,0 +1,61 @@ +package setter; + +public class Member { + + private String email; + private String password; + private String name; + private String address; + private String phone; + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getAddress() { + return address; + } + + public void setAddress(String address) { + this.address = address; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + @Override + public String toString() { + return "builder.Member{" + + "email='" + email + '\'' + + ", password='" + password + '\'' + + ", name='" + name + '\'' + + ", address='" + address + '\'' + + ", phone='" + phone + '\'' + + '}'; + } +} diff --git a/blog/builder/src/setter/Test.java b/blog/builder/src/setter/Test.java new file mode 100644 index 00000000..a4ed37d8 --- /dev/null +++ b/blog/builder/src/setter/Test.java @@ -0,0 +1,14 @@ +package setter; + +public class Test { + + public static void main(String[] args) { + + Member member = new Member(); + member.setEmail("email@naver.com"); + member.setPassword("1234"); + member.setName("kim"); + + System.out.println("member = " + member); + } +}