@[toc]设计模式
1、单例模式
package com.example.myapplication;
public class User {
//2、成员位置初始化对象
private static User user = new User();
private String name;
//1、私有构造方法
private User(){
}
//提供方法,给外界使用
public static User getUser(){
return user;
}
//main
public static void main(String[] args) {
User user = User.getUser();
User user1 = User.getUser();
if (user == user1){
System.out.println("这是同一个对象");
}
System.out.println(user == user1);
}
}
2、设计者模式
package com.example.myapplication;
public class Student {
String name;
int age;
String email;
String address;
//重写toString
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", age=" + age +
", email='" + email + '\'' +
", address='" + address + '\'' +
'}';
}
//构造
private Student(){
}
//内部类
private static class Builder {
private String name;
private int age;
private String email;
private String address;
public Builder setName(String name) {
this.name = name;
return this;
}
public Builder setAge(int age) {
this.age = age;
return this;
}
public Builder setEmail(String email) {
this.email = email;
return this;
}
public Builder setAddress(String address) {
this.address = address;
return this;
}
//创建Student对象的
public Student build() {
Student student = new Student();
student.name = this.name;
student.age = this.age;
student.email = this.email;
student.address = this.address;
return student;
}
}
public static void main(String[] args) {
Builder builder = new Builder();
builder.setName("卤蛋").setAge(19).setEmail("1473372740@qq.com").setAddress("山东");
Student build = builder.build();
System.out.println(build.toString());
}
}
本文详细探讨了两种常用的设计模式——单例模式和设计者模式,旨在帮助读者深化对软件设计原则的理解,提升代码的可维护性和复用性。
3191

被折叠的 条评论
为什么被折叠?



