全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页
📅 2026-05-07 5 分钟 ✍️ juanwangdev

Java 常量与final关键字

final 表示"最终的",被修饰的内容不可更改。

final 修饰变量

被修饰的变量只能赋值一次,成为常量。

Java
final int MAX_SIZE = 100;        // 常量命名建议全大写
final String APP_NAME = "Demo";

MAX_SIZE = 200;  // 编译错误,不可重新赋值

初始化时机

Java
// 方式1:声明时初始化
final int A = 10;

// 方式2:构造方法初始化
final int B;
public Demo() {
    B = 20;
}

// 方式3:代码块初始化
final int C;
{
    C = 30;
}

final 修饰方法

被修饰的方法不能被子类重写。

Java
public class Parent {
    public final void show() {
        System.out.println("Parent");
    }
}

public class Child extends Parent {
    // @Override
    // public void show() {}  // 编译错误,不可重写
}

final 修饰类

被修饰的类不能被继承。

Java
public final class Utils {
    // 工具类
}

// public class MyUtils extends Utils {}  // 编译错误

引用类型与final

Java
final int[] arr = {1, 2, 3};
arr[0] = 100;     // 允许,修改数组元素
// arr = new int[5];  // 编译错误,不能重新赋值引用

final 修饰引用类型时,引用不可变,但对象内容可变。

要点总结

  • final 变量:只能赋值一次
  • final 方法:不能被重写
  • final 类:不能被继承
  • 常量命名规范:全大写,单词间用下划线

📝 发现内容有误?点击此处直接编辑

← 上一篇 Java 基础数据类型包装类
下一篇 → Java 类型转换
想查看更多题目和详细解析?
小程序提供完整的题库、模拟考试和详细解析
马上就来

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库