
Java 访问权限控制 小结
发布日期:2021-05-09 06:08:27
浏览次数:10
分类:博客文章
本文共 1008 字,大约阅读时间需要 3 分钟。
总所周知,Java提供了访问权限修饰词,以供类库开发人员向客户端程序员指明哪些是可用的,哪些是不可用的。
访问权限控制的等级,从最大权限到最小权限依次为:public、protected、包访问权限(没有关键词)和 private 。
对于类(Class)
类既不可以是private的(这样会使得除该类之外,其他任何类都不可以访问它),也不可以是protected的。
所以对于类的访问权限,仅有两个选择:包访问权限、public 。
- public 类可以在其他包中调用
- 包访问权限 类只能在该包里调用。
对于方法(Method)以及变量
访问权限修饰 | 类内部调用 | 同包下的外部类调用 | 不同包下的外部类调用 | 继承调用 |
public | √ | √ | √ | √ |
protected | √ | √ | √ | |
包访问权限 | √ | √ | ||
private | √ |
注:不同包下的调用必须建立在类的访问权限必须为 public 。
接口开放方法的控制
直接使用继承方法,可以获得父类的所有方法,则将父类所有的方法都暴露给了用户,如果想要控制开放的方法可以采用一种 “ 代理 ” 的做法来实现:
例如现在有一个Class Two,其有A、B、C、D四种方法。
public class Two { public void A(){ } public void B(){ } public void C(){ } public void D(){ }}
如果我们只想给用户提供A、B、C三种方法,则可以使用这种方法来实现:
public class One { private Two two; public void A() { two.A(); } public void B() { two.B(); } public void C() { two.C(); }}
这种代理的方法,Idea可以自动帮助你生成。
(1)写上你要代理的类,如上写的为: private Two two.
(2)使用Generate --> Delegates Method 即可。
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2025年04月10日 13时32分05秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
微信小程序开发技巧总结 (一)-- 数据传递和存储
2021-05-09
Mac M1原生(ARM64)Golang dev&debug
2021-05-09
dock基本使用
2021-05-09
ASP查询数据RS转换成COMMAND
2021-05-09
getDomain(url)-我的JavaScript函数库-mazey.js
2021-05-09
CSS:text-decoration参数说明
2021-05-09
ES6通过Set数组去重
2021-05-09
春风下也有落叶
2021-05-09
[IDEA] IntelliJ IDEA 安装教程
2021-05-09
XNA实现骨骼动画 归纳总结
2021-05-09
Java读书笔记06 继承
2021-05-09
Android中的Interpolator
2021-05-09
Java虚拟机JVM学习07 类的卸载机制
2021-05-09
Mockito Hello World
2021-05-09
Material Design Animation
2021-05-09
DC-2靶机渗透
2021-05-09
缓冲区溢出实例(一)--Windows
2021-05-09
Moonraker 靶机渗透
2021-05-09
使用 EW 作Socks5代理内网穿透
2021-05-09
DNS隧道基础
2021-05-09