更新时间: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对象的内容已经被成功修改了。
全国13城校区全覆盖|黑马程序员AI大模型开发(Python),就近学习、全国就业
2026-04-08黑马程序员AI大模型开发(Python)|大厂共建+实战赋能,学完即具备企业项目能力
2026-04-08黑马程序员AI大模型开发(Python)|5阶段体系化教学,从入门到精通全覆盖
2026-04-08黑马程序员AI大模型开发(Python)|培养企业应用型人才,适配行业核心需求
2026-04-08黑马程序员AI智能应用开发|上市品牌背书,大厂联合研发,打造AI复合型人才
2026-04-08全国13城校区全覆盖|黑马程序员AI智能应用开发,就近学、就近就业
2026-04-08