Из [5.2.2] Вызов функции,
Порядок оценки аргументов неуточнен. Все побочные эффекты оценок выражения аргументов вступают в силу до ввода функции.
blockquote>Поэтому нет гарантии, что
bar()
будет работать доbaz()
, толькоbar()
иbaz()
будет вызываться доfoo
.Также обратите внимание на [5] Выражения, что:
, за исключением тех случаев, когда отмечено [eg специальные правила для
blockquote>&&
и||
], порядок оценки операндов отдельных операторов и подвыражений отдельных выражений и порядок, в котором происходят побочные эффекты, не определены., поэтому даже если вы спрашиваете, будет ли
bar()
работать доbaz()
вfoo(bar() + baz())
, порядок все еще не указан.
С официального сайта
Java еще более усилила безопасность, чтобы сделать пользовательскую систему менее уязвимой для внешних эксплойтов. Начиная с Java 7 Update 51, Java не позволяет пользователям запускать приложения, которые не подписаны (неподписаны), самоподписаны (не подписаны доверенным органом) или у которых отсутствуют атрибуты разрешений.
blockquote>Решение (* я практически никогда не пробовал), вы можете самостоятельно подписать jar-файл вашего проекта и (важно) упомянуть (импортировать) свой сертификат в Панели управления безопасностью Java. При этом ваше приложение будет считаться подписанным и проверенным приложением и не должно иметь проблем с его запуском.
Чтобы самостоятельно подписать JAR, вам могут помочь следующие ссылки.
https://www.java.com/en/download/help/java_blocked.xml
https://docs.oracle.com/javase/tutorial /deployment/jar/intro.html
https://docs.oracle.com/javase/7/docs/technotes/guides/jweb/security/rsa_signing.html
Ошибка Java: «Ваши настройки безопасности заблокировали запуск локального приложения»