修饰符的分类
- 权限修饰符:private,默认的,protected,public
- 状态修饰符:static,final
- 抽象修饰符:abstract
类的修饰符
- 权限修饰符:默认修饰符,public
- 状态修饰符:final
- 抽象修饰符:abstract
构造方法的修饰符
- 权限修饰符:private,默认的,protected,public
- 状态修饰符:final和static都不能用(由于构造方法是初始化数据的,如果为static则所有数据都可以不通过初始化一个类来访问修改,final原因待思考)
- 抽象修饰符:abstract不能用(因为构造方法一定有方法体,所以不可能是abstract的)
成员变量的修饰符
- 权限修饰符:private,默认的,protected,public
- 状态修饰符:static,final
- 抽象修饰符:abstract不能用,成员变量不存在抽象之说
成员方法的修饰符
- 权限修饰符:private,默认的,protected,public
- 状态修饰符:static,final
- 抽象修饰符:abstract
一些常用的修饰符组合
- 成员变量:public static final
- 成员方法:public static;public abstract;public final
不同权限修饰符的访问范围总结
|
本类 |
同一个包下(子类和无关类) |
不同包下(子类) |
不同包下(无关类) |
private |
Y |
|
|
|
默认 |
Y |
Y |
|
|
protected |
Y |
Y |
Y |
|
public |
Y |
Y |
Y |
Y |