[JAVA] String 클래스에 대하여
·
자바
자바 개발자라면 누구나 가장 많이 사용하는 클래스 중 하나가 바로 String이다. 어떤 프로그램을 만들든 문자열은 빠지지 않는다. 로그를 남길 때도, 사용자 입력을 처리할 때도, 파일 경로나 URL을 다룰 때도 문자열은 항상 함께한다. 그런데 자바의 String은 조금 특별하다. 불변 객체, 즉 한 번 생성되면 절대 내부 값을 바꿀 수 없도록 설계돼 있기 때문이다.이쯤 되면 자연스럽게 이런 의문이 생긴다.“왜 하필 불변으로 만들었을까?”문자열은 언제든 수정하고 이어붙이고 가공해야 하는 대상인데, 오히려 불편하지 않을까?사실 이 불편함 뒤에는 중요한 이유가 숨어 있다. 사이드 이펙트(side effect)를 피하기 위한 설계문자열은 프로그램의 전반에 걸쳐 공유 객체로 자주 사용된다. 하나의 문자열 객..