Метод декодирования позволяет вам указать основание (шестнадцатеричное, восьмеричное) в самой строке, используя "0x", "0X" или "#" для шестнадцатеричного значения и "0" в качестве префикса для восьмеричных чисел, тогда как значениеOO позволяет вам передать основание как число (например, 8 или 16) в качестве необязательного параметра. decode («0x10») эквивалентно значениюOf («10», 16). Ваш пример valueOf ("0x10") завершится с ошибкой NumberFormatException.