디자인 패턴의 팩터리 메서드(Factory Method)와는 다름!해당 클래스의 인스턴스를 반환하는 단순한 정적 메서드이름을 가질 수 있다생성자: BigInteger(int, int, Random)에 비해정적 팩터리 메서드 BigInteger.probablePrime이
정적 팩터리와 생성자의 공통 제약사항: 선택적 매개변수가 많을 경우 대응이 어렵다.점층적 생성자 패턴(telescoping constructor pattern)설정하길 원하지 않는 매개변수에도 값을 지정해줘야 함코드 가독성이 낮고 수정 및 사용이 어려움자바빈즈 패턴(J
단일 인스턴스예시함수와 같은 무상태(stateless) 객체설계상 유일해야 하는 시스템 컴포넌트싱글톤 클래스는 이를 사용하는 클라이언트를 테스트하기 어렵게 만들 수 있음 - mock 구현으로 대체가 어렵기 때문1, 2 모두 생성자는 private로 감추고, 인스턴스 접
정적 메서드와 정적 필드만을 담은 클래스예시java.lang.Math와 java.util.Array: 기본 타입 값이나 배열 관련 메서드를 모아놓음java.util.Collections: 특정 인터페이스를 구현하는 객체를 생성해주는 정적 메서드(혹은 팩터리) 모음(자바
정적 유틸리티 클래스싱글톤1과 2는 모두 자원(사전)을 단 하나만 사용한다고 가정한다는 점이 단점이다.실제로는 다양한 자원을 사용할 수 있어야 한다.대안: dictionary 필드를 final하지 않게 만드는 방법오류를 내기 쉬우며 멀티스레드 환경에서 사용 불가사용하는