n447194252
时间在这里停顿
采纳率63.6%
2017-03-14 06:56 阅读 3.6k
已采纳

final修饰的变量和线程安全的关系

我需要使用一个final修饰的对象的属性,用之前进行非空判断,如果为空值则改成一个默认值。这样的话取出来的属性肯定不能用final修饰了,但是这样会不会造成线程安全问题?final在多线程中是不是可以防止这个线程改变了另一个线程的值?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    oyljerry oyljerry 2017-03-14 07:03

    线程安全需要加锁保护。final只是语法层面

    点赞 评论 复制链接分享
  • u010730870 刍 狗 2019-06-27 19:58

    你这个情况是不安全的,final修饰对象只这个对象的引用地址不能再变,但对象里的属性值是可以重新调set方法改变的。final修饰常量才表示的是这个常量值不能变化

    点赞 3 评论 复制链接分享
  • shen_wei shen_wei 2017-03-14 07:14

相关推荐