Question: what is the difference between atomic / volatile / synchronized?
Answer: Apart from the differences mentioned above, there is a couple of syntactic difference between synchronized, volatile and atomic variables, like volatile keyword is only applicable to variables, and synchronized keyword can only be used with methods and blocks.