访问权限修饰词

访问权限修饰词:

public  :公共的

protected :受保护的

default :默认的

private:私有的

1.在修饰类时,

  外部类:只能用public和default(默认的)修饰

  内部类:可以用public protected 默认的和private修饰

内部类就是与方法同级的类

2.在修饰成员变量时:

public:在本类中,同包下,不同包子类中,其他都可见;

protected:在本类中,同包下,不同包的子类中可见,在其他的类中不可见;

默认的(default):在本类中和同包下可见,在不同包的子类中以及其他都不可见;

private:只有在本类中可见,在同包下其他类以及不同包子类和其他的类中均不可见。

注意:

    在修饰成员变量时,为了保护代码的安全性,尽量做到成员变量的不可见性;即用private修饰成员变量,

当用private修饰时,其他类没有权限修改成员变量的值;但是可以通过set/get方法来实现修改成员变量的值;

set方法:

public void setName(String name){

    this.name = name;//改变成员变量的值

}

get方法:

public String getName(){

    return name;//获取成员变量的值

}

3.在修饰方法时:与修饰成员变量的可见性一致

public:public修饰的方法在子类中可以重写

protected以及default:protected修饰的方法在子类中可以重写,在子类中的修饰词可以不变,也可以比父类的修饰权限更大的类型

private:private修饰的方法子类中不可以重写;

这些被protected以及private修饰的方法其实在子类中被继承过去了,但是没有权限显示使用或重写

---------------------------------------------------------------------------------------------------------------------------------------------------------------

final修饰词:

(1)在修饰类时:

final修饰的类不能够再派生出子类,意义在于减少随意扩展功能的可能性,破坏软件

(2)在修饰成员变量时:

final修饰的成员变量,只能够进行初始化,不能够再被赋值,可以直接进行初始化,也可以在构造器中进行初始化

(3)final修饰方法时:

final修饰的方法,不能在子类中重写,但是可以在子类中使用

(4)final修饰局部变量:

final修饰的局部变量,只能初始化一次

猜你喜欢

转载自blog.csdn.net/Peanut_508/article/details/81429600