method에서 map을 생성하자니 비효율적인 구조라는 의견이 있고


class로 빼자니, 다른 method에서 조작을 방지했으면 좋겠다는 의견이 있어 생각하다가 발견했다.


(어떤 정신나간 개발자가 method에서 이상한 값을 put 하는 그런 상황)


// class 변수
private final Map<string,string> MyMap;
...
// 생성자에서
HashMap<string,string> map = new HashMap<string,string>();
map.put("K", "1000");
map.put("M", "1000000");
MyMap = Collections.unmodifiableMap(map);


이와 같이 해주면 MyMap에 put 연산할 경우 예외가 발생하게 된다. (java.lang.UnSupportedOperation )


컴파일 시에 에러를 내주면 좋으련만..


이렇게 해도 경각심은 줄 수 있을 것같다.


참고 한 곳(링크) : How to create read only List, Map and Set in Java – unmodifiable example


생각중

'프로그래밍 > JAVA' 카테고리의 다른 글

about test layer  (0) 2014.03.15
java goto문  (1) 2013.08.05
Posted by DevMoon
,