网上看了很多关于Java中不同作用域访问权限的文章,综合一些大家写的,总结了一个比较好理解的记住方法。
说明:如果在修饰的元素上面没有写任何访问修饰符,用default表示
说明:
作用域 | 本类 | 本包范围内 | 子孙类(只代表其他包中的子孙类) | 其他包 |
public | 可以 | 可以 | 可以 | 可以 |
protected | 可以 | 可以 | 可以 | 不可以 |
default | 可以 | 可以 | 不可以 | 不可以 |
private | 可以 | 不可以 | 不可以 | 不可以 |
同一package可以理解为在同一个村庄
public 可以理解为无论是否在一个村,谁都可以访问
protected 可以理解为,只有自己一个村的邻居和子女,以及远嫁出去的子女可以访问
default 可以理解为,只有自己同村的可以范围,如果子女和自己是同村,也可以使用。如果子女远嫁出去,不在自己的村庄了,很抱歉,远水解不了近渴,远亲不如近邻。
private 可以理解为 私有财产不可侵犯,有些事情,除了自己,绝不能让其他人访问,例如银行密码。
---------------------
作者:伦博
来源:CSDN
原文:https://blog.csdn.net/qq_31686787/article/details/52553974