어떻게 수집이 수정 될 수 없음을 보장하기 위해

우리 모두가 알다시피, 최종 키워드를 수정 상상하기 쉽다

최종 키워드가 상속 될 수없는 클래스, 메소드, 멤버 변수, 최종 수정 된 클래스가 변형 될 수 있고, 최종 수정 방법은 수정 된 최종 멤버 변수 멤버 변수는 변수를 나타내는 상기 기본 데이터 타입 인 경우, 값을 초기화해야 재기록 할 수 없다 멤버 변수가 변경 될 수없는 참조 타입이 어드레스 참조 다음 값인 경우이 값은 변경 될 수 있지만, 기준점 내부 객체의 내용이 아직 변경
.

그럼, 어떻게 우리는 컬렉션이 변경되지 않도록합니까? 먼저 우리는 (...지도, 설정, 목록) 설정을 취소 할 참조 유형입니다, 그래서 우리는 최종 수정을 사용하는 경우, 다음 내부 컬렉션의 내용이나 수정할 수 있습니다.

우리는 실험을 수행 할 수 있습니다

우리는 볼 수 있습니다 : 우리는 우리 안에 갔다 이번에는 값의 집합을 통과, 최종 키워드가지도 모음을 정의 사용, 최초의 키 - 값 쌍 1,1 우리는 수정 후, 키는 1 ~ 100의 값으로 변경 될 수있다, 우리는지도의 컬렉션의 값을 수정할 수 있습니다.

우리는 어떻게 컬렉션이 수정되지 않도록해야합니까?
이 방법은지도를 반환하고 수정 될 수 없습니다에 의해 우리는 컬렉션 패키지에서 unmodifiableMap의 방법을 사용할 수 있습니다. 그는 java.lang.UnsupportedOperationException가의 잘못을보고합니다.

마찬가지로 : 모음 패키지는 컬렉션리스트 세트 및 방법을 제공한다.
Collections.unmodifiableList (목록)
Collections.unmodifiableSet (설정)
--------------------- 

추천

출처www.cnblogs.com/ly570/p/10954530.html