Java访问修饰符

发布时间 2023-09-27 00:34:40作者: 长夜星河

在Java中,publicprivateprotecteddefault是访问修饰符,用于控制类的成员(字段、方法、内部类等)的可见性和访问权限。它们的主要区别如下:

  1. public

    • public 是最开放的访问修饰符,被声明为 public 的成员可以从任何地方访问,无论是否在同一个包内或不同的包内。

    • 例如,如果一个类的成员被声明为 public,那么其他类可以在任何地方访问该成员。

  2. private

    • private 是最严格的访问修饰符,被声明为 private 的成员只能在同一个类中访问。

    • 例如,如果一个类的字段被声明为 private,其他类无法直接访问或修改这个字段,只有该类的方法可以访问它。

  3. protected

    • protected 表示成员在同一个包内可见,并且对于继承该类的子类也是可见的,即子类可以访问父类的protected成员。

    • 在不同包内的非子类不能直接访问protected成员。

    • 这对于实现继承和限制外部访问很有用。

  4. default(无修饰符):

    • 如果一个成员没有显式地使用任何访问修饰符(即没有写publicprivateprotected),则默认修饰符为包内可见(在同一个包内可见)。

    • 这意味着在同一个包内的类可以访问这个成员,但在不同包内的类不能访问它。

如果非要给它限定一个访问范围的话,排序是public protected default private