01多线程访问static修饰的方法或变量,会出现并发问题吗?
1如果调用的是静态方法,且内部没有使用静态变量,则没有线程安全问题。为什么呢?因为静态方法内声明的变量是局部变量,它放在java栈中的,每个线程调用时,都会新创建一份,而不会共用一个存储单元。比如这里的inner_result,每个线程都会创建自己的一份,因此不会有线程安全问题。2当多个线程执行同一个方法的时候,且使用静态变量时,有可能会出现线程安全问题多个线程共享一块内存区域,在不加任何保护情况下对其操作就会出现异常结果,因为静态成员(staticmember)作为公共变量,就是放在共享内存区域的。
来自:java关键字-static