final关键字用于限制类、方法和变量的修改。1. 修饰变量时值不可变,基本类型值不变,引用类型地址不变但对象内容可变;2. 修饰方法时子类不能重写,确保关键逻辑安全;3. 修饰类时该类不能被继承,如String类,保证类的不可扩展性。

final 是 Java 中的一个重要关键字,主要用于限制类、方法和变量的行为。它的核心作用是“不可改变”。以下是 final 关键字的三种常见用法:
1. 修饰变量:表示值不可更改
当 final 修饰一个变量时,意味着该变量一旦被赋值,就不能再修改。 对于基本数据类型,值不能变;对于引用类型,引用地址不能变(但对象内部状态可以变)。 通常与 static 一起使用定义常量。示例:
立即学习“Java免费学习笔记(深入)”;
酷纬企业网站管理系统Kuwebs是酷纬信息开发的为企业网站提供解决方案而开发的营销型网站系统。在线留言模块、常见问题模块、友情链接模块。前台采用DIV+CSS,遵循SEO标准。 1.支持中文、英文两种版本,后台可以在不同的环境下编辑中英文。 3.程序和界面分离,提供通用的PHP标准语法字段供前台调用,可以为不同的页面设置不同的风格。 5.支持google地图生成、自定义标题、自定义关键词、自定义描
- final int MAX_COUNT = 100; // 基本类型,值不可变
- final List
list = new ArrayList(); - list.add("hello"); // 允许:对象内容可变
- // list = new ArrayList(); // 错误:引用地址不能重新赋值
2. 修饰方法:表示方法不能被重写
final 修饰的方法不能在子类中被覆盖(override),但可以被继承和调用。 这常用于防止关键逻辑被篡改,增强程序的安全性和稳定性。示例:
立即学习“Java免费学习笔记(深入)”;
- class Parent {
- final void print() {
- System.out.println("This cannot be overridden");
- }
- }
- class Child extends Parent {
- // void print() {} // 编译错误:不能重写 final 方法
- }
3. 修饰类:表示类不能被继承
final 类不能被其他类继承,即不能有子类。 这通常用于设计不可扩展的工具类或安全相关的类。 Java 标准库中的 String、Integer 等都是 final 类。示例:
立即学习“Java免费学习笔记(深入)”;
- final class Utility {
- public void doWork() { }
- }
- // class MyUtility extends Utility { } // 编译错误:不能继承 final 类
基本上就这些。final 的合理使用有助于提高代码的安全性和清晰度,特别是在多线程环境或设计不可变对象时非常有用。理解它的三种用法是掌握 Java 基础的重要一步。









