Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Get and Set | Encapsulation
Object-Oriented Programming in Python

book
Get and Set

Getter and setter are methods for non-direct access to the attributes:

  • get() ( getter ) returns the value of the private attribute;

  • set() ( setter ) sets the value.

These methods are called properties.

You can implement them by defining two additional methods:

class Cat:
def __init__(self, name = 'Kitty', age = 1):
self.name = name
self.__age = age
self.__children = 0

# Getter
def get_age(self):
return self.__age

# Setter
def set_age(self, age):
if isinstance(age, int) and 0 <= age <= 30:
self.__age = age
else:
print('Invalid value of attribute age')

cat = Cat('Maggie', 3)
# Wrong value
cat.set_age(-23)
cat.set_age(8)
print(cat.get_age())
12345678910111213141516171819202122
class Cat: def __init__(self, name = 'Kitty', age = 1): self.name = name self.__age = age self.__children = 0 # Getter def get_age(self): return self.__age # Setter def set_age(self, age): if isinstance(age, int) and 0 <= age <= 30: self.__age = age else: print('Invalid value of attribute age') cat = Cat('Maggie', 3) # Wrong value cat.set_age(-23) cat.set_age(8) print(cat.get_age())
copy

Note

We added data validation inside the set_age() method. Only the correct integer value can be assigned to the attribute.

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 2. Capítulo 2

Pergunte à IA

expand
ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

We use cookies to make your experience better!
some-alt