Access rights to a class property
A property is a code element that includes two processes:
- a process for retrieving the value,
- a process for assigning the value.
A property can be used like a variable or like a member (direct retrieval of the value, assignment via the '=' symbol, ...). At runtime:
- Any operation that requires reading the property runs the process for retrieving the value. This process must return a value.
- Any operation that requires writing the property executes the process to assign a value that must process a parameter.
In order for a property to be read-only, the assignment code of the property must be entirely cleared.
In this case:
- If the property is modified in the code, a compilation error occurs.
- An error will occur at runtime when trying to assign the property.
In order for a property to be write-only, the retrieval code of the property must be entirely cleared.
In this case:
- If the property is read in the code, a compilation error occurs.
- An error will occur at runtime when trying to read the property.
The retrieval and assignment processes can be public, private or protected. The access rights of the property correspond to the less restrictive rights of the two processes.
Access rights of the property according to the access rights of the processes:
|Assignment process |
The properties are accessible on the instances and by inheritance by respecting the standard restrictions of the public, protected and private inheritances.
If the access rights allow reading and not writing, the property is considered read-only.
If the access rights allow writing and not reading, the property is considered write-only.
This page is also available for…