可能是个非常愚蠢的问题。只是想确认我的理解。
class Test
{
private volatile String id;
public void setID(String id)
{
this.id = id;
}
public String getID()
{
return id;
}
}
假设上述类的对象可以被多个线程访问。我的理解是,对于像上面那样简单的getter和setter方法(进行简单初始化),我不需要使这些方法同步,是吗? 我猜测需要使用volatile,否则在不同的线程中,id的值可能会过时。 那么,如果我们没有把这些方法作为同步方法,是否有人能看到任何问题?