backend/Java

[Effective Java] 5. 불필요한 객체 생성을 피하자

버리야 2009. 9. 23. 11:33
반응형
5. 불필요한 객체 생성을 피하자

불변(immutable) 객체는 항상 재사용가능하다.

String s = new String("buri"); 

이렇게 쓰지 말고

String s = "buri"; 

이렇게 쓰자는거

실행될 때마다 새로운 인스턴스를 생성하지 않고 하나의 String 인스턴스를 사용하며 같은 JVM에서 실행되는 어떤 코드에서도 동일한 문자열 리터럴(literal)을 갖도록 재사용될 것이다.

불변 클래스의 불필요한 객체 생성을 막으려면 생성자보다는 static 팩토리 메소드를 사용하는 것이 좋다.
생성자인 Boolean(String)보다는 static 팩토리 메소드인 Boolean.valueOf(String)을 사용하는 것이 더 좋다.
생성자는 호출될 때마다 새 객체를 만드는 반면, static 팩토리 메소드는 결코 그럴 필요가 없고 실제로 그렇게 하지도 않는다.

반응형