Poniżej przedstawiono pytanie dotyczące używania właściwości w klasie.Właściwość i enkapsulacja
Używam publicznych właściwości zamiast publicznego ujawniania zmiennych członkowskich. Większość zaleca, aby takie podejście ułatwiało hermetyzację. Jednak nie rozumiem przewagi enkapsulacji, czyniąc ją własnością.
wiele osób nie zna prawdziwego powodu używania nieruchomości. Po prostu robią to jako część standardu kodowania.
Czy ktoś może wyjaśnić, w jaki sposób właściwość jest lepsza niż publiczna zmienna członkowska i jak poprawia ona hermetyzację?
chciałbym podkreślić, że zmiana ta nie oznacza, że klienci muszą być zmienione. Oznacza to tylko, że będziesz musiał ujawnić właściwość engineRunning w ten sam sposób i z tą samą semantyką jak poprzednio. Jedyna różnica polega na tym, że każda aktualizacja właściwości zapłonu i rozrusznika musiałaby również zaktualizować właściwość engineRunning. W zależności od tego, co częściej czyta się/aktualizuje, może to mieć pozytywny lub negatywny wpływ na wydajność. –