Java Atomic Class
[java volatile keyword](https://texonom.com/java-volatile-keyword-27b96abf0d494b58ad0de8b4790dd457) [java synchronized keyword](https://texonom.com/java-synchronized-keyword-ba7ea74e31864a41a1e75893e6a7ed3e) 


### Generic의 객체를 wrapping 클래스입니다
AtomicReference 클래스는 멀티쓰레드 환경에서 동시성을 보장


### CAS(compare-and-swap)를 이용하여 동시성을 보장
여러 쓰레드에서 데이터를 write해도 문제가 없음
synchronized 보다 적은 비용으로 동시성을 보장


> [Java - AtomicReference 사용 방법](https://codechacha.com/ko/java-atomic-reference/)




