Java
이펙티브 자바, 쉽게 정리하기 - item7. 다 쓴 객체 참조를 해제하라
다 쓴 객체 참조를 해제하라 Stack 코드의 예제 public class Stack { private Object[] elements; private int size = 0; private static final int DEFAULT_INITIAL_CAPACITY = 16; public Stack() { elements = new Object[DEFAULT_INITIAL_CAPACITY]; } public void push(Object e) { ensureCapacity(); elements[size++] = e; } public Object pop() { if (size == 0) { throw new EmptyStackException(); } return elements[--size]; } pri..
이펙티브 자바, 쉽게 정리하기 - item6. 불필요한 객체 생성을 피하라
불필요한 객체 생성을 피하라 객체 생성의 비용 객체를 매번 생성하고 지우는 것은 반복적으로 발생했을 때 큰 비용이 될 수 있다. 물론 현대 컴퓨터의 성능이 많이 좋아서 작은 객체는 큰 부담이 되지 않을 수도 있다. 계속 같은 내용의 객체를 사용할 것이라면 불변 객체를 만들어놓고 재사용하는 것이 좋다. 불필요한 객체 생성의 예 String 객체의 예 String s = new String("bikini"); 위 코드는 안티패턴이다. 결국 bikini라는 문자열을 사용하고 싶은 건데, 굳이 JVM 문자열 풀에서 가져오지 않을 이유가 없다. String s = "bikini"; 더 간결하면서도 더 옳은 코드이다. Boolean 객체의 예 Boolean boolean = new Boolean(true); 과연 ..