У меня есть статический класс «Builder» внутри класса «MyClass». Если я попытаюсь создать два экземпляра MyClass с помощью конструктора одновременно из двух потоков, будет ли это безопасно? Могут ли значения, установленные одним потоком, быть присвоены объекту, созданному другим потоком?
Код:
public class MyClass {
private int height;
private int weight;
private MyClass(Builder builder) {
height = builder.height;
weight = builder.weight;
}
public static class Builder {
private int height;
private int weight;
public Builder height(int h) {
height = h;
return this;
}
public Builder weight(int w) {
weight = w;
return this;
}
public MyClass build() {
return new MyClass(this);
}
}
}