- 기존 객체를 재사용해야 한다면 새로운 객체를 만들지 마라.
- 재사용은 빠르고 세련되다.
하지 말아야할 극단적인 예
String s = new Stirng("yuri");
개선된 버전
String s = "yuri";
- 생성자 대신 정적 팩터리 메서드(아이템 1)를 제공하는 불변 클래스에서는 정적 팩터리 메서드를 사용해 불필요한 객체 생성을 피할 수 있다.
- 불변 객체만이 아니라 가변 객체라 해도 사용 중에 변경되지 않을 것임을 안다면 재사용할 수 있다.
- 박싱된 기본 타입보다는 기본 타입을 사용하고, 의도치 않은 오토박싱이 숨어들지 않도록 주의하자.
'공부 기록 > Java' 카테고리의 다른 글
[이펙티브 자바 3/E] 아이템8 - finalizer와 cleaner 사용을 피하라 (0) | 2023.07.19 |
---|---|
[이펙티브 자바 3/E] 아이템7 - 다 쓴 객체 참조를 해제하라 (0) | 2023.07.19 |
[이펙티브 자바 3/E] 아이템5 - 자원을 직접 명시하지 말고 의존 객체 주입을 사용하라 (0) | 2023.07.06 |
[이펙티브 자바 3/E] 아이템4 - 인스턴스화를 막으려거든 private 생성자를 사용하라 (0) | 2023.07.02 |
[이펙티브 자바 3/E] 아이템3 - private 생성자나 열거 타입으로 싱글턴임을 보증하라 (0) | 2023.07.02 |