12. final修饰符

Posted xzxl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了12. final修饰符相关的知识,希望对你有一定的参考价值。

一、final修饰符概述

1. final可以修饰类、变量和方法

2. final修饰的类、变量和方法不可改变

 

二、final成员变量

1. 对于final修饰的成员变量而言,一旦有了初始值,就不能被重新赋值

2. 由于成员变量不一定需要显式初始化,故那些既没有在定义时指定初始值,也没有在初始化块、构造器中指定初始值的final成员变量的值将一直是系统默认分配的0、‘\u0000‘、false或null,这些final成员变量也就完全失去了存在的意义,因此Java规定:final修饰的成员变量必须由程序员显式地指定初始值

  • final类变量:必须在静态初始化块中指定初始值或声明该类变量时指定初始值,而且只能在两个地方的其中之一指定
  • final实例变量:必须在非静态初始化块、声明该实例变量或构造器中指定初始值,而且只能在三个地方的其中之一指定

 

以上是关于12. final修饰符的主要内容,如果未能解决你的问题,请参考以下文章

什么叫final修饰符?有什么作用?

static修饰符与final修饰符

Java面向对象(OOP)--final修饰符 & abstract修饰符

Java从入门到放弃——05.修饰符static,final,权限修饰符

java中final修饰符的使用

final关键字和权限修饰符