Access specifiers:

  1. Public: accessible to public
  2. Private: accessible to members inside the class
  3. Protected: Mostly used with inheritance where protected members can be accessible by derived class because derived class can’t access base class’s private members.