Правильно ли я понимаю, что блок статической инициализации thread-safe, то есть выполняется JVM априори в synchronized режиме?
public class OurPresident {
private static OurPresident president;
static {synchronized (OurPresident.class){
president=new OurPresident();}
}
private OurPresident() {
}
public static OurPresident getOurPresident() {
return president;
}
}