List<string> list;

stack에는 heap주소가 저장되고,
heap에는 실제 데이터가 저장된다.

ex) stack(int, float, bool, char)
		heap(class 인스턴스, string, 배열, new)

이때, stack은 heap에 가르키고 있는 영역이 없으면?
메모리에 값이 없으므로 nullReference 이다.

예로들어) Square square; 이렇게 구조체 변수를 생성해주면 
					실제 값은 null로 들어가있음.
					null이면 무슨 데이터의 무슨 null값인지 모르니까 
					stack 포인터가 어디에 가르킬지 몰라 에러가 난다.

그래서!
저 에러가 뜰 경우에는.
1. new로 할당하지 않은 참조형 변수사용.
2. 추가하지 않은 키나 데이터 사용할 때!