To create a public property which can be read by all classes but can be assigned to only by derived classes, the following syntax should be used:

The public access modifier allows the overall property to be visible and accessible, but the protected modifier on the set accessor restricts access to only derived classes.