В чем разница между public, protected, package-private и private в Java?
в Java существуют четкие правила о том, когда использовать каждый из модификаторов доступа, а именно по умолчанию (пакет private),public,protected и private, а class и interface а дело с наследством?