본문 바로가기

Effective Java 3rd/Chapter 2. 객체 생성과 파괴

Item 6. 불필요한 객체 생성 금지

반응형

Boxing type 대신 Primitive Type 을 권장한다.

Util Class 에서 또한 Primitive type 을 권장한다.

그렇다고 항상 primitive type이 옳은 것은 아니다.

대표적인 Null case에 대해

price가 0인 것과 null인 것의 의미는 다르다.

Boxing type은 null을 가질 수 있다.

주의해야 할 내장 Method

위와 같이 isEmailValid를 할 때 매 번 Pattern 인스턴스를 생성하는 꼴이다.

Pattern instance가 한 번만 생성되게끔 하려면

위와 같이 static하게 Pattern instance를 낭비하지 않게 만들 수 있다.

주의

  • 무심결에 Instance를 과도하게 생성하지는 않았는지
  • Primitive Type 과 Boxing Type을 의도하고 사용하였는지Util Class 에서 또한 Primitive type 을 권장한다.대표적인 Null case에 대해Boxing type은 null을 가질 수 있다.
    • 무심결에 Instance를 과도하게 생성하지는 않았는지
    • Primitive Type 과 Boxing Type을 의도하고 사용하였는지
  • 주의
  • 위와 같이 static하게 Pattern instance를 낭비하지 않게 만들 수 있다.
  • Pattern instance가 한 번만 생성되게끔 하려면
  • 위와 같이 isEmailValid를 할 때 매 번 Pattern 인스턴스를 생성하는 꼴이다.
  • 주의해야 할 내장 Method
  • price가 0인 것과 null인 것의 의미는 다르다.
  • 그렇다고 항상 primitive type이 옳은 것은 아니다.
반응형