C'è un po di confusione..
se un membro di una classe non ha modificatore di accesso allora ha il modificatore di default che è package, ovvero il membro è accessibile nello stesso package della classe
protected significa che il membro è accessibile nello steso package della classe, ma anche dalle sottoclassi di altri package (quindi protected è meno restrittivo di package!)
Le classi hanno solo due modificatori d'accesso: package e public; nel primo caso possono essere acceduto solo nel package, nel secondo possono essere accedute ovunque