JAVA

[JAVA] List 선언만 하기, 선언하고 초기화 하기 차이

오선지♬ 2024. 10. 27. 13:18
728x90
반응형

1.List<ResLeadMtrmListDTO> leadMtrmList = new ArrayList<>();

  • 선언 및 초기화 : 이 줄은 명명된 객체 List의 를 선언 하고 동시에 새 .로 초기화합니다 .ResLeadMtrmListDTOleadMtrmListArrayList
  • 사용법 : leadMtrmList초기화되었기 때문에 요소를 추가, 제거 또는 조작하는 데 즉시 사용할 수 있습니다.
  • 메모리 할당 : 이 new ArrayList<>()부분은 사용할 준비가 된 빈 목록을 메모리에 생성합니다.

2.List<ResLeadMtrmListDTO> leadMtrmList;

  • 선언만 해당 : 이 줄은 목록을 선언만 leadMtrmList하고 List<ResLeadMtrmListDTO>초기화하지는 않습니다.
  • 사용법leadMtrmList : 초기화하지 않고 사용하려고 하면 새 인스턴스가 할당될 때까지 NullPointerException그대로이므로 오류가 발생합니다.null
  • 메모리 할당 : 초기화되지 않았기 때문에 목록 요소를 저장할 메모리가 할당되지 않습니다.

요약

첫 번째 줄은 즉시 사용할 수 있지만 두 번째 줄은 leadMtrmList = new ArrayList<>();안전하게 사용하려면 추가 초기화가 필요합니다.

728x90
반응형