Строковый пул

“String pool в Java” или почему не надо сравнивать строки при помощи “==”

Разбирая недавно старый код, доставшийся мне по наследству на одном из проектов, я наткнулся на дефект, который отнял у меня добрую часть рабочего дня. Ошибка была самым настоящим heisenbug’ом: несколько лет этот код успешно работал в продукционной среде и дефект вышел из тени только при миграции на новую версию одного тяжеловесного JEE-совместимого сервера приложений.

Continue reading...