- в качестве модификаторов доступа к членам классов. Члены класса, объявленные с модификатором доступа private доступны только в функциях-членах самого класса, а также друзьям класса. protected - функциям-членам класса, функциям классов-наследников данного класса и друзьям класса. public - всем, кому доступно определение класса.
- для определения типа наследования класса. Наследование с ключевым словом public открывает клиентской программе, использующей объект класса-наследника, доступ ко всем членам класса-родителя, объявленным с модификатором public. Такое наследование реализует связь типа "является". Наследование с ключевым словом private запрещает клиентской программе, использующей объект класса-наследника, доступ ко всем членам класса-родителя, даже, если они описаны как public и protected. Реализует связь типа "использует". Наследование с ключевым словом protected на практике не используется.
Private, Public, Protected
Ключевые слова private, public, protected используются: