Zpo-9-wyk-Slajd22
Z Studia Informatyczne
Przykład
Przykładem błędnego przeprowadzenia takiej zmiany jest następujący fragment kodu. Dotyczy on obiektu StringTokenizer, dzielącego napisy na wyrazy i zwracającego je w postaci pojedynczych tokenów.
Zamiast zapamiętywania wartości metody st . next () po przekształceniu metoda ta jest wywoływana w każdym miejscu, w którym dotychczas następowało odwołanie do zmiennej. Jednak takie przekształcenie wprowadza błąd do programu, ponieważ metoda st . next (), która zmienia stan obiektu StringTokenizer, zostanie obecnie wywołana wielokrotnie, co wpłynie na zwracane przez nią wartości. Dlatego w przypadku tego przekształcenia należy zwrócić szczególną uwagę na problem efektów ubocznych.