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

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 2

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Suggested prompts:

Ställ mig frågor om detta ämne

Sammanfatta detta kapitel

Visa verkliga exempel

Awesome!

Completion rate improved to 7.69

bookGet and Set

Svep för att visa menyn

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.

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 2
some-alt