You cannot put this visibility modifier on a class or interface.


  protected can appear on just on a method, a variable, a constructor, or a named inner class.


  It allows access by classes in the same package, and by any subclasses regardless of their package. 


  You cannot override a protected method with a methods having no modifiers. This assigns package/default access, which is is more restrictive than protected.  See overriding.