String, StringBuilder, StringBuffer의 차이를 설명해보세요. - String 객체는 immutable 합니다. 즉, 한번 생성이 되면 변경이 불가능합니다. 반면에, StringBuilder와 StringBuffer의 차이점은 멀티쓰레드 상태에서 동기화의 지원 여부가 다릅니다. StringBuffer는 멀티쓰레드 환경에서 동기화를 보장하지만, StringBuilder는 동기화를 보장하지 않습니다. 추가적으로 설명하자면, String과 StringBuilder는 원래 문자열을 합치는 과정에서 성능차이가 있었지만, JDK 1.5버전 이후부터는 String을 "+"연산할 경우, 동적으로 StringBuilder로 컴파일하여 실행되므로 성능차이가 사라졌습니다. 객체지향 프로그래밍(OOP..