黑马程序员技术交流社区

标题: final关键字到底修饰了什么? [打印本页]

作者: lizf2010    时间: 2015-7-29 21:15
标题: final关键字到底修饰了什么?
本帖最后由 lizf2010 于 2015-7-29 21:19 编辑



  1. public class Test {

  2.         public static void main(String[] args) {

  3.                 final StringBuilder sb = new StringBuilder("abc");
  4.                 System.out.println(sb.toString());//abc
  5.                 sb.append("def");
  6.                 System.out.println(sb.toString());//abcdef
  7.                     }
  8. }
复制代码

我们总是说被final修饰的变量“不变”,但是由于对象型变量的本质是引用,这就使得不变有两种含义:是引用本身不变,还是引用指向的对象不变,上面的代码能够可以正常运行,说明被final修饰的变量只能保证它永远指向那个固定对象,但是对象自身变不变就和它没关系了。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2