Calculated properties are special properties that are designed to return a value based on doing math on multiple values. This allows us to get what we need from a class without violating encapsulation.
Let's look at an example where the Employee is increasing the price of an item. Right now the employee calls IncreasePrice method which calls the GetNewPrice method.
This is fine but let's make the GetNewPrice method private. We lose access to that method from the Employee class.
We can instead use a public property to control the calculation and return instead of the private method.
Note how the property and the method are nearly identical. Now we can use the NewPrice property to get the private calculation of the price field.
And when we run the application we can see that the NewPrice property holds the calculated value while the private price field is still 2.75.
And once we step over...
...we can see that the private price field is now the 3.575 and the NewPrice property updates to a new value because it is using the new private price field value.