In object-oriented programming, the accessibility modifier is used to determine which methods may be accessed from outside of a class. In the case of an interface, all methods declared in the interface must have the same access modifier and this must be specified when declaring each method. The default accessibility for any method inside an interface is public, meaning that it can be accessed both inside and outside of the implementing class.   However, if another access modifier such as private or protected is declared explicitly then available visibility decreases accordingly. It's important to keep in mind that regardless of what access modifier is specified, interfaces are always published and can never be hidden.