java 修饰符和访问权限介绍
修饰符介绍:
public
使用对象:类、接口、成员变量、方法
介绍:无论它所处在包定义在哪该类(接口、成员)都是可访问
protected
使用对象:成员变量、方法
介绍:成员变量只能在定义它包中被访问,如果在其他包中被访问,则实现这个思路方法类必须是该成员所属类子类
private
使用对象:成员变量、成员方法
介绍:成员变量和方法都只能在定义它类中被访问,其他类都访问不到。对成员变量的进行获取和更改,一般用get() set() public 方法。实现了Java面向对象的封装思想。
friendly(缺省)
使用对象:类、方法、成员变量
介绍:访问权限与protected相似,但修饰类成员时不同包中的子类不能访问。
static
使用对象:方法、成员变量
介绍:修饰变量,称为类变量或静态变量。静态变量是和类存在一起的,每个实例共享这个静态变量.在类加载时初始化。
final
使用对象:类、方法、成员变量
介绍:一旦定义为fina,就不能被修改了。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取不能更改。修饰类是不能派生出子类,修饰方法时,不能被当前子类的方法覆盖
abstract
使用对象:类、接口、方法
介绍:修饰类时,被称为抽象类。不能创建abstract 类的实例。一般被继承,实现抽象方法。类只要有一个abstract方法,类就必须定义为abstract,但abstract类不一定非要保护abstract方法不可
类与类之间的访问:
类型
缺省
Public
同一个包中的类
可访问
可访问
不同包中的类
不可访问
可访问
类和类中方法的访问权限
类修饰/方法修饰符
Public
缺省
Public
所有类
包中类(含当前类)
Protected
包中类(含当前类,所有子类)
包中类(含当前类)
Friendly(缺省)(用法和Protected 相识)
包种类(含当前类)
包中类(含当前类)
Private
当前类(本身)
当前类(本身)
类成员访问修饰符与访问能力之间的关系(类成员访问权限)
类型
Private
无修饰 (fiendly)
Protected
Public
同一类
可访问
可访问
可访问
可访问
同一包中的子类
不可访问
可访问
可访问
可访问
同一包中的的非子类
不可访问
可访问
可访问
可访问
不同包中 的子类
不可访问
不可访问
可访问
可访问
不同包中的非子类
不可访问
不可访问
不可访问
可访问
继承和权限:
Publiic
无修饰
Private
Protect
final
abstract
static
类继