본문/내용
1. Java의 기본 데이터 타입과 참조 데이터 타입의 차이점을 설명하세요.
Java의 기본 데이터 타입은 정수, 부동소수점, 문자, 논리값과 같은 원시 자료형으로 변수 선언 시 별도의 객체 생성 없이 간단하게 값을 저장할 수 있습니다. 예를 들어, int 타입은 -2,147,483,648부터 2,147,483,647까지 4바이트의 저장 공간을 사용하며 빠른 연산이 가능하여 성능상 유리합니다. 반면에 참조 데이터 타입은 클래스, 배열, 인터페이스 등 객체를 가리키는 변수입니다. 참조 타입은 메모리상에서 객체의 주소값을 저장하는데, 예를 들어 String 객체는 UTF-16 인코딩 방식으로 구현되어 있으며, 1바이트당 2바이트를 차지하여 10만 문자를 저장하는데 약 20KB의 메모리를 사용합니다. 이때 참조 타입의 변수는 객체의 실제 데이터가 저장된 메모리 위치를 가리키기 때문에, 객체의 크기와 메모리 사용량이 크고, 할당 및 해제 과정이 복잡하여 처리 속도는 느릴 수 있습니다. 또한, 기본 타입은 값 자체를 저장하고, 참조 타입은 호출 시 객체의 주소를 통해 데이터에 접근하므로, 참조 타입은 null 값을 가질 수 있어 NullPointerException 발생 가능성이 높습니다. 구조상 기…