조슈아 블로크 님의 "Effective Java" 책을 정리한 포스팅 입니다.1. Stringnew실행될 때마다 인스턴스를 생성함 literal생성된 인스턴스를 재사용상수 풀에 캐싱됨 (interned된 문자열만 관리) 2. 정적 팩토리 메서드팩토리 메서드는 호출할 떄마다 객체를 생성하지 않음가변객체이더라도 사용중에 변경되지 않는다면, 재사용이 가능함불필요한 객체 생성을 피할 수 있음 3. 캐싱생성 비용이 비싼 객체인 경우 캐싱하여 재사용 Patternpublic class RomanNumerals { private static final Pattern ROMAN = Pattern.complie( "^(?-.)M*(C[MD]|D?C{0,3})" + "(X[..