更新时间: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对象的内容已经被成功修改了。
【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19【AI大模型开发-Python】毕业33个工作日,就业率已达到94.55%,班均薪资20763元
2025-09-19【AI智能应用开发-Java】毕业5个工作日就业率98.18%,最高薪资 17.5k*13薪,全班平均薪资9244元
2025-09-19