由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Java版 - 传递一个object reference,如何防止更改object?
相关主题
请教一个多线程lock机制的问题问HashSet的问题?
synchronization for counters说说clone咋违反了类继承的原则来的?
Helpcopy constructor都什么时候be called啊
synchronization 锁住了什么?immutable list
Simple question[合集] 问一下这个cast在java里是怎么work的
请教关于使用map和fields[合集] 谁能解释一下这里的protected specifier
一个多线程问题synchronized method does lock the object that passed into the method as a parameter?
大家写java class的时候是完全封装的么?Java复制object
相关话题的讨论汇总
话题: object话题: getter话题: reference话题: hashset话题: synch
进入Java版参与讨论
1 (共1页)
s*y
发帖数: 472
1
比如说有一个getter for a Hashset.
用户call getSet(),拿到这个Hashset的reference,但是他直接可以往set里加减东西
请问如何防止别人通过setter进行这种操作?
另外相对这个set进行多线程操作,怎么用synchronized实现mutual exclusion?synch
ronized getter method理论上应该不管用吧?一旦pass给reference以后,getter的程
序就跑完了,mutual exclusion也消失了。
还请大虾指教
多谢!
s******n
发帖数: 876
2
you can return a cloned map. that's not as silly as it sounds.
or see java.util.Collections.unmodifiableMap()

synch

【在 s*y 的大作中提到】
: 比如说有一个getter for a Hashset.
: 用户call getSet(),拿到这个Hashset的reference,但是他直接可以往set里加减东西
: 请问如何防止别人通过setter进行这种操作?
: 另外相对这个set进行多线程操作,怎么用synchronized实现mutual exclusion?synch
: ronized getter method理论上应该不管用吧?一旦pass给reference以后,getter的程
: 序就跑完了,mutual exclusion也消失了。
: 还请大虾指教
: 多谢!

s*y
发帖数: 472
3
If there is a lot of data, cloning may become vey slow, right?
the unmodifiable versions of collection seems really nice!
Thanks!

【在 s******n 的大作中提到】
: you can return a cloned map. that's not as silly as it sounds.
: or see java.util.Collections.unmodifiableMap()
:
: synch

1 (共1页)
进入Java版参与讨论
相关主题
Java复制objectSimple question
问个面试题, 谢谢请教关于使用map和fields
一个关于generics的问题一个多线程问题
CC150 16.6答案是不是有问题? (转载)大家写java class的时候是完全封装的么?
请教一个多线程lock机制的问题问HashSet的问题?
synchronization for counters说说clone咋违反了类继承的原则来的?
Helpcopy constructor都什么时候be called啊
synchronization 锁住了什么?immutable list
相关话题的讨论汇总
话题: object话题: getter话题: reference话题: hashset话题: synch