I understand that one should use protected
when one wants to make the variable visible in all classes that extend current class, but what does that mean exactly? What are the most common use cases?
I suppose another way to frame the question would be, what are the key cases when you would want a class variable to be visible from the class' children but not from external classes.