Проблема безопасности потоков с SimpleDateFormat

Я получил следующий кусок кода из теста программистов

private String formatDate(Date date)
{
  String result = "";
  //….
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  result = sdf.format(date);
  //…
  return result;
}

с дополнительной информацией о том, что несколько потоков используют метод одновременно. Есть ли проблемы с этим?

Мой ответ таков: нет, все должно быть хорошо (при условии, что в деталях // ... больше ничего не происходит).

Моя мотивация заключается в том, что не используются глобальные или классовые структуры данных. Дата передается от каждого протектора в качестве параметра, и внутри метода используются только локальные переменные и локальные объекты. Таким образом, каждый поток получит и использует егоСобственный экземпляр объекта класса SimpleDateFormat.

Однако это не былоправильный" ответ в тесте. "правильный" Ответ заключается в том, что класс SimpleDateFormat не являетсяПотокобезопасен, и поэтому доступ к этому объекту должен быть синхронизирован.

Итак, я или решение правильное?

Ответы на вопрос(2)

Ваш ответ на вопрос