Properties
Properties are used to manage the attributes of objects. They are an important and powerful aspect of OOP but can be challenging to grasp at first. For example, suppose you have an object that has a height
attribute and a width
attribute. You might also want such an object to have an area
property, which is simply the product of the height
and width
attributes. You would prefer not to save the area as an attribute of the shape because the area should update whenever the height or width changes. In this sort of scenario, you will want to use a property.
You will start by exploring the property decorator and then discuss the getter/setter paradigm.
The property decorator
The property decorator looks similar to the static methods and class methods that you have already encountered. It simply allows a method to be accessed as an attribute of an object, rather than it needing to be called like a function with ()
.
To understand the need for this decorator, consider...