Z Wikipedii :
Stan zwykle odnosi się do obecnego stanu systemu lub podmiotu ...
To właściwie oznacza w kontekście komputerowym: dane, które określają stan jakiegoś obiektu lub systemu.
Znaczenie „stanu” nie jest specyficzne dla programowania. Istnieją przykłady „stanu” dosłownie wszędzie, gdzie spojrzysz. Telewizor jest wyłączony. Kawa jest gorąca. Adidasy są a) niebieskie; b) śmierdzący; c) nie odkładać; d) dość zużyte. „stan” w sensie programistycznym jest taki sam jak „stan” w sensie nieprogramowym, z tym wyjątkiem, że stosujemy go do obiektów, z którymi mamy do czynienia: zmiennych, obiektów, wątków, baz danych, systemów plików itp. Jeśli masz aby to wyjaśnić, wyjaśnij je znanymi terminami - nie ma potrzeby przekształcania go w obcą, techniczną koncepcję.
Zegar jest dobrym przykładem prostego systemu, który ma pewien stan: zegar może być uruchomiony lub nie, i wskazuje czas, który może, ale nie musi, odpowiadać rzeczywistej porze dnia. Łatwo jest zobaczyć, jak te rzeczy są jak zmienne i jak zmiana stanu zegara może wpłynąć na inne rzeczy.
Porównaj to z czymś bezstanowym, na przykład stwierdzeniem: „Drzwi są czerwone”. Samo zdanie nie ma stanu. To może być prawda, że drzwi są czerwone, ale sama instrukcja nie zawiera żadnego stanu. Malowanie drzwi może zmienić prawdziwość oświadczenia, ale samo oświadczenie nigdy się nie zmienia. Podobnie liczba taka jak 42 nie ma żadnego stanu: 42 to 42 i nie można nic w tym zmienić.
Zmienne mają stan, wartości nie.