Мало хорошее объяснение для Java Синхронизировано даются здесь - what-does-synchronized-mean и learning-java-use-of-synchronized-keyword
Теперь, если основной метод синхронизации, только один поток может войти в этот метод, который является Java основного потока (при условии, что класс выполненный как основной класс).
Для выполнения этого метода основной поток получит блокировку уровня класса (статический метод). Итак, если класс имеет больше статических синхронизированных методов, они будут заблокированы навсегда для другого потока, пока основной поток не завершит выполнение или не перейдет в состояние ожидания.
strictfp является Java объясняется when-should-i-use-the-strictfp-keyword-in-java и strictfp-in-java
Он не имеет каких-либо другое поведение с main()
.
Метод main() предполагается вызывать JVM и не должен вызываться программистом для внутреннего использования. Таким образом, он не должен синхронизироваться –
Что касается 'strictfp', вы можете взглянуть на [этот вопрос] (http://stackoverflow.com/questions/517915/when-should-i-use-the-strictfp-keyword -в-Java). Sidenote: это ключевое слово, а не модификатор. – Turing85
@ Turing85 - Это модификатор, см. [JLS] (https://docs.oracle.com/javase/specs/jls/se8/html/jls-8.html#jls-8.4.3). – RealSkeptic