【JAVA学习路-think in java】第6章:访问控制总结

1、同一编译单元内:

a、该类定义中,public protected private 均可以自由调用;

b、该类生成的对象,public、protected可以随意调用;

2、同一包内:

a、在类定义的同一包内,其它编译单元可以生成类的对象,并调用public、protect数据和方法,但不能调用private。不必通过import来导入,可以直接使用。如同1b;

3、不同包内:

a、导入方法:

import pakgeName.*;
或者具体到类所在的编译单元:
import pakgeName.className1;import pakgeName.className2;

b、

b1、类必须是public,否则其它单元中将不可见。
b2、每个类必须单独占有一个编译单元,文件名等于类名。
b3、类中允许有main函数,main()可以无参,可以不是static。

c、对于在其他编译单元中生成的类的对象,仅public变量和方法能被调用;

d、每个编译单元只能有一个public类(p121),因此无法将多个类定义在同一编译单元中,却提供给其他包中的类调用。

表格总结:

访问控制权限
  public protected private
类的定义 Y Y Y
同一编译单元中类生成的对象 Y Y N
本包 Y Y N
外部包 Y N N
发布了29 篇原创文章 · 获赞 5 · 访问量 6028

猜你喜欢

转载自blog.csdn.net/Andrew_Zeng/article/details/104096884