突然脑筋短路,一个关于类的方法的问题,请大家指点。

03-01-05 henry.t
    

一个类,有私有成员变量,有公有方法,方法里有方法内变量

问题是:

1。 如果这是一般的类(不是STATIC)那么当然没什么问题,谁声明谁用,不管什么变量都声明人使用,没别人能用。但如果是STATIC类(虚拟机内永远有该实例,而且只有一个),或有多线程同时访问一个类实例,(分别在这两种情况下)那么方法内的变量会不会有同步问题?也就是说,当有两个进程或线程同时访问同一个方法时,其方法内的局部变量会不会有同步问题(大家都用同一组变量而不是各用各的)。

2。如果该方法时STATIC的呢???(相对与第一个问题)

不好意思,突然想到这个问题,感觉有点短路了而且有点弱智,请大家细细回答,(如果我以上的某个说法时错误的,也请指出)谢谢

祝新年快乐

    

banq
2003-01-06 13:06

当然需要同步。

henry.t
2003-01-06 14:30

那怎么在CSDN上有人回答,只要是方法内的局部变量,都没有这个同步问题啊?

到底哪个正确啊,我都糊涂了,不过既然是BANG你回答的,我想你的应该正确是吧?

banq
2003-01-06 16:15

对不起,我说同步是这个方法要同步,如果你的这个方法可能被多个线程同时访问,因为一个方法内不可能只有一些局部变量。

具体问题具体分析,同步会牺牲性能。

hxz
2003-01-06 17:15

http://www.javaworld.com/javaworld/jw-02-2001/jw-0209-double-p2.html

2Go 1 2 下一页