Ruby/Metody singletonowe: Różnice pomiędzy wersjami
Usunięta treść Dodana treść
Szymon wro (dyskusja | edycje) m Ruby/Metody singleton przeniesiono do Ruby/Metody singletonowe: Bardziej po polsku chyba |
Szymon wro (dyskusja | edycje) Nie podano opisu zmian |
||
Linia 1:
== Metody singletonowe ==
Zachowanie instancji zdeterminowane jest przez jej klasę, ale mogą być sytuacje, w których wiemy, że konkretna instancja powinna mieć specjalne zachowanie. W większości języków musimy niestety definiować nową klasę, która byłaby wtedy instancjonowana tylko raz. W Rubim możemy dać każdemu obiektowi jego własne metody.
<pre>
ruby> class SingletonTest
| def size
Linia 19 ⟶ 22:
ruby> test2.size
10
</pre>
W tym przykładzie <tt>test1</tt> i <tt>test2</tt> należą do tej samej klasy, ale <tt>test2</tt> otrzymał przedefiniowaną metodę <tt>size</tt>, więc zachowują obiekty się odmiennie. Metoda dana pojedynczemu obiektowi nazywana jest ''metodą singletonową''.
Metody singletonowe są często używane w elementach graficznego interfejsu użytkownika (ang. GUI), gdzie różne działania muszą być podjęte, w zależności od naciśniętych przycisków.
<noinclude>
{{ProstaNawigacja|spis=Ruby|poprzart=Ruby/Kontrola dostępu|poprz=Kontrola dostępu|nastart=Ruby/Moduły|nast=Moduły}}
|