Protected : VISIBLE only to package level*.
class is defined protected ---> it cannot be extended from outside package(not visible).
And if it cannot be extended then it is meaningless to keep it as protected, because then it will become default access which is allowed.
Same applies to private defined classes.
Note : Nested or inner classes can be defined protected or private.
* : Explore protected keyword, for this answer I made it succinct.