Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer 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.

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 2

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

some-alt