用例子理解Java权限修饰符(private,default,protected和public)

来源:互联网 发布:郑州安然燃气网络缴费 编辑:程序博客网 时间:2024/04/29 07:47

权限修饰用于限定对象起作用的范围,也就是,在什么地方我们能够访问到这个对象,在什么地方我们访问不到这个对象了,这里的对象是指属性、方法、类和接口。

一、权限修饰符作用于属性和方法。private,default,protected和public都能作用于属性和方法。

1.当private作用于属性和方法时,就只有在同一个类中能访问它们。例子如下:


但是在同一包中的其它类(Person的子类或者任意其它类)中不能访问Person类中的私有属性和私有方法。如下:




2.当default作用于属性和方法时,除了在同一个类中能访问它们,同一个包中的其它类(包括该类的子类和任意其它类)中也能访问它们。当属性或者方法没有权限修饰符时,其实就是default修饰的。例子如下:


在其它包中的类(Person的子类或者任意其它类)中不能访问Person类中的default修饰的属性和方法。例子如下:





3.当protected作用于属性和方法时,除了在同一个类中和同一个包中的类(包括子类和其它任意类)中能访问它们外,其它包中该类的子类中也能访问它们。例子如下:


其它包中的除开非子类的其它类中不能访问Person类中的protected修饰的属性和方法。例子如下:


4.当public作用于属性和方法时,除了在一个类中和同一个包中的类(包括子类和其它任意类)中能访问它们外,其它包中的类(包括子类和其它任意类)中也能访问它们。例子如下:







二、权限修饰符作用于类和接口。只有default和public能修饰类和接口。

1.当default修饰类和接口时,类和接口只能在同一包中的类或接口中被访问。例子如下:



在其它包中的类不能访问到该包中default修饰的类。例子如下:


2.当public修饰类和接口时,类和接口能被同一包中其它包中的任意类访问到。例子如下:




0 0
原创粉丝点击