更新时间:2023-05-15 来源:黑马程序员 浏览量:

当使用final关键字修饰一个变量时,这个变量就成为了一个常量,它的值不能被修改,但是它所引用的对象本身是可以被修改的。
具体的原因我们看如下代码演示:
final int x = 5;
x = 6; // 编译错误,因为 x 是 final 常量,它的值不能被修改
final StringBuilder sb = new StringBuilder("Hello");
lb.append(", World!"); // 可以修改 lb 所引用的 StringBuilder 对象
System.out.println(lb.toString()); // 输出:Hello, World!在上面的代码中,我们使用final关键字定义了一个整数常量x,它的值被设为5。然后我们试图将x的值修改为6,但是由于x是一个常量,所以编译器会报错。
接着我们定义了一个StringBuilder对象,用final修饰它的引用lb。然后我们可以通过lb引用来修改 StringBuilder对象的内容,例如向其中添加一些文本。最后,我们将StringBuilder对象的内容输出到控制台上,可以看到输出结果为 "Hello, World!",表明StringBuilder对象的内容已经被成功修改了。
毕业16个工作日,平均薪资13180元,就业率100%,广州黑马AI智能应用开发(Java)学科20250529班
2026-03-06毕业32个工作日,平均薪资11147元,就业率95%,广州黑马AI智能应用开发(Java)学科20250326班
2026-03-05黑马程序员2025全国就业数据发布:全学科平均就业率92.07%,AI开发类就业平均薪资达11869.67元。
2026-03-05黑马全国校区齐开班!场面太太太壮观了!
2026-03-03AI智能应用开发课程紧贴企业刚需,全程高效学习,直达中高级软件开发水平
2026-02-28风口正劲!黑马程序员又一AI智能应用开发班毕业当天100%就业!
2026-02-27