똑같은 기능의 객체를 매번 생성하는것보다는 객체 하나를 재사용하는편이 나을때가 많다. 두 코드는 과연 같을까? String str = "RomaMan";개선된 버젼 String str = new String("RomaMan");//하지 말아야할 행위! new String("RomaMan")의 경우는 실행 될때마다 String 인스턴스를 새로 만들게 된다. 생성자에 넘겨진 "RomaMan" 자체가 이 생성자로 만들어내려는 String과 기능적으로 똑같기 때문이다. 만약 이 문장이 반복문이라 빈번히 호출되는 메서드 안에 있다면 쓸데없는 String 인스턴스가 수백만개가 만들어 질 수 있다. 개선된 버젼은 새로운 인스턴스를 매번 만드는 대신 하나의 String 인스턴스를 사용하게 된다. 더불어 이러한 방법을 ..