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 中的可见性修饰符的理解。
相关推荐
字节源流1 小时前
关于maven的依赖下不下来的问题
java·maven
pjx9871 小时前
服务间的“握手”:OpenFeign声明式调用与客户端负载均衡
java·运维·spring·负载均衡
prinrf('千寻)2 小时前
MyBatis-Plus 的 updateById 方法不更新 null 值属性的问题
java·开发语言·mybatis
老华带你飞2 小时前
实习记录小程序|基于SSM+Vue的实习记录小程序设计与实现(源码+数据库+文档)
java·数据库·spring boot·小程序·论文·毕设·实习记录小程序
m0_555762902 小时前
Qt缓动曲线详解
开发语言·qt
在未来等你2 小时前
互联网大厂Java求职面试:AI与大模型应用集成及云原生挑战
java·微服务·ai·kubernetes·大模型·embedding·spring ai
源码技术栈3 小时前
SaaS基于云计算、大数据的Java云HIS平台信息化系统源码
java·大数据·云计算·云his·his系统·云医院·区域his
编程、小哥哥3 小时前
互联网大厂Java面试:从Spring Boot到微服务架构的技术深挖
java·spring boot·redis·微服务·prometheus·面试技巧
揽你·入怀3 小时前
数据结构:ArrayList简单实现与常见操作实例详解
java·开发语言
okok__TXF3 小时前
SpringBoot3+AI
java·人工智能·spring