Many thanks to Tristan Morris for creating a beautiful illustrated hardcover print edition of the site |
|||||||||||||||||
Послушник недавно прибыл из Храма Трёх Камней, где используется только язык C. Он был новичком в Java и вскоре наткнулся на неизменяемость строк. “Я хочу только поменять содержимое этого поля!” - воскликнул он. “Но для этого требуется создать объект StringBuffer и, впоследствии, новый объект String, дважды копируя множество нетронутых символов между ними! С какой целью были разработаны такие строки?” Учёная сестра услышала его и посоветовала: “Медную монету, передаваемую из рук в руки, всё ещё можно обменять на другой день, но только не яйцо”. И послушник просветился. Вскоре послушник стал определять все классы неизменяемыми. Ни одно свойство нельзя было менять: только при создании нового экземпляра можно было делать необходимые изменения. Его конструкторы иногда были удивительно большими и сложными. Учитель Java узнал об этом и сказал: “Пусть яйцо отольют из меди подадут монахине на завтрак.” Таким образом была наказана монахиня за свой совет послушнику. Перевод Sergey Malenkov. Отрывок из The Codeless Code, созданная Qi (qi@thecodelesscode.com). При условии, в соответствии с условиями Creative Commons Attribution-NonCommercial 3.0 Unported License. |