​​Модификаторы доступа



private – доступ открыт только внутри класса



default или package-private – класс, методы или переменные будут видны только внутри пакета



protected – члены класса доступны внутри пакета и в наследниках



public – доступны всем



В наследниках можно менять модификаторы доступа в сторону большей видимости. Например, метод protected Object clone() можно сделать public, но нельзя сделать default.