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

bookGet 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:

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.

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 2

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Awesome!

Completion rate improved to 7.69

bookGet and Set

Pyyhkäise näyttääksesi valikon

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:

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.

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 2. Luku 2
some-alt