Java的四种访问权限修饰符

提示:对访问权限修饰符理解,最好的方法就是写代码进行测试。

Java的四种访问权限修饰符


一、四种访问权限

  • Java 借助 private、protected、public与默认修饰符来控制类和类成员的访问性。

1.对于类来说

  • 修饰符 private 和 protected 不可用于修饰类。
  • 一个没有修饰符的类,是不能被其他包中的类访问的,它只能在同一个包内被访问。

2.对于类成员来说

  • private:私有访问权限,只能由类本身进行访问。
  • default:包访问权限,只能在同一个包中的类才能进行访问。
  • protected:受保护的访问权限,在同一个包中的类可以进行访问,子类也可以访问。
  • public:公开的访问权限,所有的类都可以访问。
修饰符 可见性标记 同类 同包子类 同包非子类 不同包子类 不同包非子类
private - yes no no no no
default yes yes yes no no
protected # yes yes yes yes no
public + yes yes yes yes yes

二、关于继承的一些规则

  • 子类中继承的成员不能拥有比原先赋值的权限更弱的访问权限,只能拥有更强的访问权限。
  • 最弱的访问权限时private,最强的访问权限是public。访问权限:public>protected>默认>private
    • 在超类(父类)中声明为 public 的成员必须在所有的子类中声明为 public。
    • 在超类(父类)中声明为受保护的成员必须要么为 protected,要么为 public。
    • 不声明访问控制的成员(默认修饰符)不能在子类中声明为 private。
    • 声明为 private 的成员无法被继承。

三、总结

  • 小编这里就没有写代码进行举例了,大家可以写代码进行验证,同时加深对 Java 中的可见性修饰符的理解。
相关推荐
镜花水月linyi13 分钟前
ConcurrentHashMap 深入解析:从0到1彻底掌握(1.3万字)
java·后端
极客Bob13 分钟前
Java 集合操作完整清单(Java 8+ Stream API)
java
雨中飘荡的记忆14 分钟前
Javassist实战指南
java
q***d17317 分钟前
Kotlin在后台服务中的框架
android·开发语言·kotlin
Knight_AL21 分钟前
JWT 无状态认证深度解析:原理、优势
java·jwt
周杰伦fans24 分钟前
C# 中的 `Hashtable`
开发语言·c#
习习.y29 分钟前
关于python中的面向对象
开发语言·python
lingggggaaaa29 分钟前
免杀对抗——C2远控篇&PowerShell&有无文件落地&C#参数调用&绕AMSI&ETW&去混淆特征
c语言·开发语言·笔记·学习·安全·microsoft·c#
技术净胜30 分钟前
MATLAB 基因表达数据处理与可视化全流程案例
开发语言·matlab
友友马30 分钟前
『Qt』多元素控件
开发语言·qt