Java访问权限(详尽版)

Java中的访问权限一共有四种:publicprotected默认的private(访问范围由大到小):
先说public和private这两种,因为这两种最容易理解:

  • public在整个项目中都可以被访问,无论是否在同一个包或类中,仅仅只需在同一个类中就可以了,需要注意的是:在不同包中时,需要引包;
  • private只能在本类中被使用,即使同一个包中的其他类继承了该类也不可以(当然了,使用Java封装就可以访问,不过这就属于其他范畴了);

接下来说说 默认的 和 protected :

  • 默认的 :无论是否有继承,只要是在同一个包中,都可以被使用,而在不同包中时 即使继承了也不可以被使用(对,就是这么任性);
  • protected
    • [a] 在一个包中:
      • 非静态方法:只能使用创建对象去调用,或者父或子类对象(子类继承父类时)去调用,不能用子类或父类类名去调用
      • 静态方法:既可以使用创建对象去调用,或者父类或子类对象(子类继承父类时)去调用,还可以用子类类名或父类类名去调用(建议使用这种去调用)
    • [b] 不在同一个包中(需继承、引包):
      • 非静态方法:只能使用子类对象去调用,不能在子类中使用父类对象去调用
      • 静态方法:既可以使用子类对象或父类对象去调用,还可以使用子类或父类类名去调用。

我们来用表格来总结一下:
访问权限

发布了34 篇原创文章 · 获赞 8 · 访问量 702

猜你喜欢

转载自blog.csdn.net/weixin_45720626/article/details/105374263