이펙티브 자바

[아이템3]싱글턴을 만들거면 확실히 만들자! 이펙티브 자바 책을 읽으면서 새로 알게된 내용이나 느낀점을 정리한 글입니다. 싱글턴(Singleton) 싱글턴 만드는 방법을 이야기하기 전에 싱글턴이 무엇인지부터 알아보자. 인스턴스를 오직 하나만 생성할 수 있는 클래스를 말한다. (Application내에서 단 1개의 인스턴스만 생성할 수 있는 클래스) 한번의 객체 생성으로 재사용이 가능하기 때문에 메모리 낭비를 방지할 수 있다. 싱글톤으로 생성된 객체는 전역성을 띄기에 다른 객체와 공유가 용이하다. 정말 쉽게 말하면 프로그램상에 딱 한개만 존재하는 인스턴스를 싱글턴이라고 한다. 그러면 어떻게 싱글턴을 만들까? 크게 두가지 방법이 있다. 필드 방식의 싱글턴 기본 생성자를 외부에서 호출 못하게 막아버리는 방법이..
[아이템2]생성자에 매개변수가 많을 때는? 빌더 패턴을 쓰자! 이펙티브 자바 책을 읽으면서 새로 알게된 내용이나 느낀점을 정리한 글입니다. 프로젝트 개발을 하다보면 객체 내 필드가 많아지는 경우가 많은데 이럴 일반적인 생성자를 쓰려고 하면 현타가 오는 경우가 많다. 예를 들면 아래와 같은 상황이다. { new Test(var1,var2,var3.......var10....); } 보기만해도 알아보기 힘들고 특히 파라미터가 저렇게 많으면 파라미터간에 자리를 헷갈려서 잘못 넣기라도 하면 버그의 원인이 된다-_-;;; 이럴 때 쓰면 좋은 것이 빌더패턴이다. (책 내에서는 점층적 생성자패턴이나 자바 빈즈 패턴도 언급하고 있는데 크게 의미는 없는 것 같아 뺐다) 빌더 패턴 Builder를 이용해 필수 매개변수로 ..
[아이템1]생성자보다 정적 팩터리 메서드를 써야하는 이유 이펙티브 자바 책을 읽으면서 새로 알게된 내용이나 느낀점을 정리한 글입니다. 일반적으로 객체를 생성할 때는 생성자를 이용한 new 키워드를 통해 객체를 생성한다. 필자가 처음 자바를 배울 때도 그렇게 하라고 배웠다. 그런데 이 책에서는 생성자보다 정적 팩터리 메서드를 통해 만드는 것을 권장하고 있다. 더보기 PS. 정적 팩터리 메서드란? -> 간단히 말하면 메서드를 통해 객체를 생성하는 것을 정적 팩터리 메서드라고 한다. 아래는 LocalTime 의 정적 팩터리 메서드의 예시이다. public static LocalTime of(int hour, int minute) { ChronoField.HOUR_OF_DAY.checkValidValue((lo..
Chung-A
'이펙티브 자바' 태그의 글 목록