【问题标题】:Please explain final AtomicReference请解释最终的 AtomicReference
【发布时间】:2013-04-14 15:57:50
【问题描述】:

谁能给我解释一下:

final AtomicReference<Integer> atomicReference = new AtomicReference<>(1);
atomicReference.set(2);

final 在什么意义上使用?

【问题讨论】:

    标签: java final java.util.concurrent atomicreference


    【解决方案1】:

    final 阻止您更改 变量 以引用不同的实例。
    它不会阻止您改变现有实例。

    表示你不会写

    atomicReference = something;
    

    【讨论】:

      【解决方案2】:

      final 表示 atomicReference 不能不能引用另一个 AtomicReference

      【讨论】:

        【解决方案3】:

        final 只是表示不能重新分配变量/对象。

        但是你可以通过 setter 来修改你的对象,例如

        检查一下:

        http://en.wikipedia.org/wiki/Final_(Java)

        【讨论】:

          【解决方案4】:

          final 在什么意义上使用?

          变量本身是最终的。您不能更改变量的值来引用不同的 AtomicReference 对象。

          在对象上调用set 从而更改对象的数据根本不是一回事。

          用更现实的说法,我可以给你我的家庭住址,然后说,“你不能改变我住的地方。”不过,这并不能阻止你把我的前门涂成绿色(即改变地址所指的房子。)

          【讨论】:

            猜你喜欢
            • 2013-08-02
            • 1970-01-01
            • 2011-07-26
            • 2022-08-24
            • 1970-01-01
            • 1970-01-01
            • 2013-09-16
            • 2013-10-20
            • 1970-01-01
            相关资源
            最近更新 更多