数据隐藏和封装:
- 可以将类看作是数据和方法的集合
- 面向对象
访问控制:
- 定义访问控制在类的外部调用类中的成员
- public,protected, private是控制访问的修饰符
访问模块:
- 模块是java9中引入的新的概念
访问包:
- 包层次的访问控制,不是java语言的直接部分,通常,访问控制的级别在类和类中的成员
访问类:
- 默认情况下,顶级类可以在包含它们的包中被访问
- 如果类定义中添加了public访问限制装饰符,则该类可以在任何地方被调用访问
访问类中成员:
public class Laundromat { // People can use this class.
private Laundry[] dirty; // They cannot use this internal field,
public void wash() { ... } // but they can use these public methods
public void dry() { ... } // to manipulate the internal field.
// A subclass might want to tweak this field
protected int temperature;
}
- 默认情况下,类中成员可以被同一个包内其他类调用,称为包访问
- 总共有4种方式的访问级别:package, public, protected, private
- 同一个类中任意字段和方法,可以在类中访问
- 如果一个类中成员添加描述符public, 表示任意可以访问该类的地方,都可以调用该public装饰的成员,public是限制最小的访问级别;
- 如果一个类中成员添加描述符private, 表示该成员除了在定义它的类中可以访问,其他地方都无法访问,private是限制最大的访问级别
- 如果一个类中成员添加描述符protected,表示该成员可以在同一个包中的类中被调用,且可以在定义成员的类的子类中被调用(无论该子类是否在同一个包中)
原文
https://segmentfault.com/a/1190000020371895