📜  Java中类或接口的访问修饰符(1)

📅  最后修改于: 2023-12-03 14:42:59.698000             🧑  作者: Mango

Java中类或接口的访问修饰符

在Java中,类或接口的访问修饰符用于控制类或接口的可见性和访问权限。Java提供了几种访问修饰符,开发人员可以根据需要选择合适的修饰符来限制类、接口、成员变量和方法的访问权限。

访问修饰符列表

Java中的访问修饰符有四个,分别是:

  1. public(公共):在任何地方都可以访问。
  2. protected(受保护):可以被同一包中的类访问,或者在不同包中的子类访问。
  3. private(私有):只能在同一个类中访问。
  4. default(默认):只能被同一包中的类访问。

下面是四个访问修饰符的使用示例及其作用:

public class PublicClass {
    // 可以被任何类访问
}

protected class ProtectedClass {
    // 可以被同一包中的类或不同包中的子类访问
}

private class PrivateClass {
    // 只能在本类中访问
}

class DefaultClass {
    // 只能被同一包中的类访问
}
类或接口的可见性
  • 如果一个类或接口使用 public 访问修饰符修饰,那么该类或接口可以在任何地方被访问。
  • 如果一个类或接口未使用任何访问修饰符(即使用默认访问修饰符),那么该类或接口只能在同一包中被访问。
  • 使用 private 访问修饰符修饰的类或接口只能在声明它的类内部被访问。
  • 使用 protected 访问修饰符修饰的类或接口可以在同一包中被访问,也可以在不同包中的子类中被访问。
成员变量和方法的可见性

成员变量和方法的可见性与类或接口的可见性类似,也受到访问修饰符的限制。

  • 使用 public 访问修饰符修饰的成员变量或方法可以在任何地方被访问。
  • 使用 private 访问修饰符修饰的成员变量或方法只能在类内部被访问。
  • 使用 protected 访问修饰符修饰的成员变量或方法可以在同一包中被访问,也可以在不同包中的子类中被访问。
  • 使用默认访问修饰符修饰的成员变量或方法只能在同一包中被访问。
总结

访问修饰符在Java中起到了限制类、接口、成员变量和方法访问权限的作用。根据需求,我们可以选择适当的访问修饰符来控制代码的访问范围。以下是访问修饰符的可见性总结:

| 修饰符 | 类或接口可见性 | 成员变量和方法可见性 | | --------- | ---------------------------------- | -------------------------------- | | public | 任何地方可见 | 任何地方可见 | | protected| 同一包中可见、不同包的子类可见 | 同一包中可见、不同包的子类可见 | | private | 仅在类内部可见 | 仅在类内部可见 | | 默认 | 同一包中可见 | 同一包中可见 |

使用合适的访问修饰符有助于提高代码的可读性、封装性和安全性。尽量遵循访问修饰符的最小可见原则,即将类、接口、成员变量和方法的访问权限限制在最小范围内,这样可以降低耦合性,提高代码的可维护性和可扩展性。