Допустим, у меня есть некоторый код Java:
public class SomeClass {
static {
private final double PI = 3.14;
private final double SOME_CONSTANT = 5.76;
private final double SOME_OTHER_CONSTANT = 756.33;
}
//rest of class
}
Если поток создает экземпляр экземпляра SomeClass и выполняет инициализацию значений в статическом блоке, когда второй поток создает экземпляр второго экземпляра SomeClass, что происходит со статическим блоком? Второй поток игнорирует это, предполагая, что это уже инициализировано, хотя первый поток не сделан? Или что-то еще происходит?