[Effective Java] 아이템 6 - 불필요한 객체 생성을 피하라

아이템 6 - 불필요한 객체 생성을 피하라

📌 똑같은 기능의 객체를 매번 생성하기보다는 객체 하나를 재사용하는 편이 나을 때가 많다.

String s = new String("bikini"); // x !!

String s = "bikini"; // o !!

📌 새로운 인스턴스를 매번 만드는 대신 하나의 String 인스턴스를 사용

=> 같은 가상 머신 안에서 이와 똑같은 문자열 리터럴을 사용하는 모든 코드가 같은 객체를 재사용함이 보장

📌 불변 클래스에서의 정적 팩터리 메서드

📌 String.matches()

public boolean matches(String regex) {
        return Pattern.matches(regex, this);
    }
  • 문자열에 정규표현식이 일치하는지를 boolean으로 리턴
  • Pattern 인스턴스는 한 번 쓰고 버려져서 가비지 컬렉션 대상이 된다.
  • 유한 상태 머신 : 장치나 모델이 가질 수 있는 유한개의 상태를 정의하고, 조건에 맞는 이벤트가 발생되면 해당 상태로 변경되는 방식으로 동작하는 것을 유한상태기계라 한다. 출처
  • 유한 상태 머신은 인스턴스 생성 비용이 높다.

좋은 웹페이지 즐겨찾기