Metody/funkcje stałe nie zmieniają stanu jakiejkolwiek zmiennej/obiektu w programie. Tylko tym się różnią od swoich zwykłych braci. Po to się je pisze, aby zabezpieczyć program przed niespodziewanymi awarami, bo jeśli dana funkcja zmieni coś, a jest stała, to kompilator wyrzuci błąd, a o to nam przecież chodzi, bo wiemy, że nasz kod jest źle napisany.