Java中的volatile修饰符有什么作用?