Advanced Lesson 2
Advanced Object-Oriented Programming
Chapter 3: Encapsulation
Property
What if you also want to be able to update the .name
property? (In a controlled manner, of course!)
lovely_person.name = "George"
All you need to do is to convert the setter method set_name()
into a name
property. Again, you rename set_name()
to name()
(Line 10) and annotate the method with a @name.setter
decorator (Line 9), where @name
is the name of your property. Also notice that I’ve changed the constructor back to how it was before (Line 3)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
|
Now, users of your VainPerson
class can both read and write to the name
property (in a controlled manner), and you also made your code more readable in the process!