java final修饰符详解,final修饰变量

KLQ 2020-09-11 14:52:29 java常见问答 7643

下面要给大家介绍的知识就是和java final修饰符有关的内容,下文主要介绍了final修饰变量方面的知识,一起来了解一下。

使用final关键字声明类、变量和方法要注意下面的几点:

1、final用在类的前面表示这个类不可以有子类,也就是这个类不可以被继承;

2、final用在变量的前面表示变量的值不可以改变,这个时候这个变量可以被称为常量;

3、final用在方法的前面表示方法不可以被重写;

final修饰变量

final修饰的变量即成为常量,只能赋值一次,但是final所修饰局部变量和成员变量有所不同。

final修饰的局部变量必须使用之前被赋值一次才能使用;final修饰的成员变量在声明时没有赋值的叫“空白 final 变量”,空白final变量必须在构造方法或静态代码块中初始化;

注意一下,final修饰的变量不能被赋值这种说法是错误的,严格的说法是,final修饰的变量不可被改变,一旦获得了初始值,这个final变量的值就不可以被重新赋值。

public class FinalDemo
{
    void doSomething()
    {
        // 没有在声明的同时赋值
        final int e;
        // 只能赋值一次
        e = 100;
        System.out.print(e);
        // 声明的同时赋值
        final int f = 200;
    }
    // 实例常量
    final int a = 5; // 直接赋值
    final int b; // 空白final变量
    // 静态常量
    final static int c = 12; // 直接赋值
    final static int d; // 空白final变量
    // 静态代码块
    static
    {
        // 初始化静态变量
        d = 32;
    }
    // 构造方法
    FinalDemo()
    {
        // 初始化实例变量
        b = 3;
        // 第二次赋值,会发生编译错误
        // b = 4;
    }
}

final修饰变量的内容就介绍到这里了,请继续关注奇Q工具网吧,更多java基础知识可以为你分享。

推荐阅读:

java import static静态导入详解

java static关键字静态方法详解,静态方法实例分享

java static关键字静态变量详解,静态变量和实例变量区别介绍