一.Java修饰符
Java修饰符大致分为两类:1.访问控制修饰符;2.非访问控制修饰符
修饰符的位置:用来定义类、方法和变量,通常放在语句的最前端。
二.访问控制修饰符
Java可以使用访问控制符来保护对类、变量、方法和构造方法的访问。
Java支持4种不同的访问权限。访问权限主要针对四处,当前类、子类、当前包和其他包。
访问修饰符 | 当前类 | 同包 | 子类 | 其他包 |
private | Y | N | N | N |
default | Y | Y | N | N |
protected | Y | Y | Y | N |
public | Y | Y | Y | Y |
private:只有当前类中可见,使用对象:变量、方法,注意:不能修饰类(外部类)
default:同一包内可见,使用对象:接口、类、方法、变量
protected:当前类、同包和子类中可见,其他包不可见,使用对象:变量、方法。注意:不能修饰类(外部类)
public:对所有类可见。使用对象:类、接口、变量、方法
三.详解4种访问修饰符
1.私有访问修饰符-private
私有访问修饰符是最严格的访问级别,所以被声明为private的方法、变量和构造方法只能被所属类访问,并且接口和类不能声明为private。声明为私有访问类型的变量只能通过类中个getter方法被外部类访问。Private访问修饰符的使用主要用来隐藏类的实现细节和保护类的数据。
2.默认访问修饰符-不使用任何关键字
使用默认访问修饰符声明的变量和方法,对同一个包内的类是可见的。
3.受保护的访问修饰符-protected关键字
protected从两点分析:
(1)子类与基类在同一包中:被声明为protected的变量、方法和构造器能被同一个包中的任何其他类访问;
(2)子类与基类不在同一个包中:子类实例可以访问其从基类继承而来的protected方法,不能访问基类实例的protected方法;