📜  接口中方法的访问说明符(1)

📅  最后修改于: 2023-12-03 15:39:50.344000             🧑  作者: Mango

接口中方法的访问说明符

在接口中,方法的访问说明符与类中的访问说明符类似,用于控制方法的可见性和访问权限。

可以使用的访问说明符
  • public: 所有类都可以访问该方法。
  • private: 仅在该接口中可见,其他类不能访问。
  • protected: 只有该接口的子类和同一包中的其他类可以访问。
  • default(未声明访问说明符): 只有同一包中的其他类可以访问。
单个方法的访问说明符

在接口中,单个方法可以使用上述任何一个访问说明符。

public interface MyInterface {
    public void methodOne(); // public
    private void methodTwo(); // private
    protected void methodThree(); // protected
    void methodFour(); // default
}
接口的访问说明符

接口本身也可以具有访问说明符。

  • public: 接口是公共可见的,可以被任何类访问。
  • default(未声明访问说明符): 接口只能被同一包中的类访问。
public interface PublicInterface {
    public void method(); // public
}

interface DefaultInterface {
    void method(); // default
}
接口继承中方法的访问说明符

当一个接口继承自另一个接口时,如果两个接口中存在同名方法,则需要注意它们的访问说明符的可见性。

  • 如果父接口中的方法是 public,那么子接口中的方法可以使用任何访问说明符。
  • 如果父接口中的方法是 protecteddefault,那么子接口中的方法只能使用相同的访问说明符或更宽松的访问说明符。
interface MyInterface {
    public void methodOne();
    protected void methodTwo();
    void methodThree();
}

interface MySubInterface extends MyInterface {
    public void methodOne(); // public 可以被所有类访问
    protected void methodTwo(); // protected 只能被该接口和子类访问
    void methodThree(); // default 同包类可以访问
}
总结

在接口中,方法的访问说明符与类中的访问说明符类似,用于控制方法的可见性和访问权限。同时,接口本身也可以具有访问说明符。在接口继承中,父接口的方法访问说明符对子接口中同名方法的访问说明符有影响。了解和使用好访问说明符,有助于提高代码的安全性和可重用性。