값을 직접 다루는 기본형과 객체 참조를 구분합니다.
byte, short, int, long, float, double, char, boolean은 기본형입니다. String, 배열, 클래스 인스턴스는 객체를 가리키는 참조값을 저장하며 null일 수 있습니다.
예제에서 int number = 10; String text = "10"; 부분부터 찾으세요. 선언 타입, 실제 객체와 반환값을 한 줄씩 따라가면서 컴파일 단계에서 잡히는 문제와 실행 중 생기는 문제를 구분하세요.
래퍼 타입 Integer, Double 등은 컬렉션과 제네릭에서 기본형을 객체로 다루게 하며 autoboxing이 자동 변환을 제공합니다.
불필요한 boxing은 메모리와 null 위험을 늘릴 수 있으므로 대량 계산은 기본형 특화 API도 고려합니다.
현재 코드를 먼저 실행해 출력과 타입 흐름을 확인한 뒤 char와 문자열 한 글자의 차이를 출력하세요.
Integer는 null일 수 있어 int로 자동 언박싱할 때 NullPointerException이 발생할 수 있습니다.
직접 바꿔보세요char와 문자열 한 글자의 차이를 출력하세요.
실행 버튼을 누르면 결과가 여기에 표시됩니다.