'volatile' в сигнатуре метода? [Дубликат]
This question already has an answer here:
Why make a method volatile in java? 7 answersЭто странно У меня есть следующий код:
<code>class A { protected A clone() throws CloneNotSupportedException { return (A) super.clone(); } } </code>
когда я декомпилировал его байт-код через «showmycode.com», он показал мне следующий код:
<code>class A { A() { } protected A clone() throws clonenotsupportedexception { return (A)super.clone(); } protected volatile object clone() throws clonenotsupportedexception { return clone(); } } </code>
Что означает, что тип возвращаемого метода должен быть изменчивым во втором «клоне»? метод? (Этот код был скомпилирован с помощью стандартного компилятора JDK 1.6 Eclipse).